八爪鱼,百万用户信赖的网络爬虫工具

会做规则?但你不一定知道这些排错技巧!(规则排错教程II)

作者:keven 发布时间:10/13/2016 3:18:07 PM 6647 人已阅读

摘要:今天这一期课程,我们解决采出来的数据错乱、数据重复、云采集可能出现的问题。上课!

Black哥这几天忧心忡忡,重阳节当天连最爱的登高望远都不去了。看着一大波在规则面前倒下的用户,他决定再次发力,利用上班之余的时间再攻出一篇规则排错教程。如今Black哥脑门后已经悄悄冒出了几根白发,各位客官要是觉得此帖能够帮到你的话不妨帮八爪鱼多拉点人气,助Black哥完成本月业绩,赢取白富美,走向人生巅峰啊!

没时间解释了。。。

今天这一期课程,我们解决采出来的数据错乱、数据重复、云采集可能出现的问题。上课!


1.   采集的数据错乱,不是对应信息?

(1)多个提取数据步骤

遇见这种情况大多是采集评论数据的时候
主要原因:主要网页加载问题,在当前采集到数据后,点击元素到评论数据页面的时候,有些网页会加载很久,导致数据采集慢,如果设置ajax去忽略加载的话,就容易出错。如果不设置ajax,则采集的数据量少,采集速度慢。
解决方法:分成两步,第一步是采集当前页面信息和评论页面的URL,第二步是循环URL采集 评论数据,后续将导出数据在excel、数据库中匹配处理。

例子:采集亚马逊书籍评论数据时,由于评论数据与基本信息在不同页面,从基本信息页面进入评论数据页面,网页加载较慢,如果设置ajax,就很容易出现数据错乱。

 1

2

 

(2)字段信息出现在不同位置


主要原因:同一个网站,一般来说,网页结构大体相同,所以我们制作规则提取数据时,直接点击相应的位置进行提取,但有时候字段信息会放在不同位置,导致信息错位。
解决方法:重新修改xpath,使之精确定位到对应字段信息

例子:京东手机商品的基本信息,其中分辨率字段出现数据错乱情况,主要是分辨率信息位置不是固定的。

3

4

 


2、 数据重复

(1)单机运行,数据出现大量重复


主要原因:主要是翻页设置错误,比如只在一二页循环,或者最后一页的下一页按钮依然可以点击。

解决方法:修改翻页的xpath定位,手动执行测试是否可以正常翻页。

例子:一个有关电影院信息的网站,大量采集电影院信息,但是采集409条信息,其中371条数据重复(图一),主要是因为在翻到第二页时,循环的xpath定位到上一页。出现一二页循环问题。

5

 

6

 


3、云采集,采集不到数据


解决办法:在单机运行正常的情况下,才可以进行云采集。
先确认云节点是否被其他任务占满,如果是,则当前任务因分配不到节点,导致无法采集到数据。如果不是,一般是网页加载问题。因为云上带宽较小,在云服务器中打开网页时间一般会比本地打开网页的时间耗时更长,当网页本地打开都需要比较长的时间的话(例.国外网站或图片较多的网站),云上也许就要更长的时间,一旦超时就会不打开跳过这一页数据,这时可以把打开网页的高级选项里的超时时间改长些,就可以解决。

排除上述问题后,还要可能是任务拆分出现问题和禁止加载图片,可以在运行云采集前更改这些选项。

7 1

 

云采集特例

(1)采集列表的详情页信息时,单机采集无法实现循环


主要原因:有些网页的结构较特殊,八爪鱼虽然能够创建完整的流程,但是返回查看循环列表时,列表为空。这里主要是网页结构的问题,但也属于特殊例子,因为基本很难遇到。


解决办法:先采集列表的URL,然后通过URL列表循环采集详情页信息。


例子:在采集下面网页中的各人物的相关信息,需要循环点击人物的姓名,进入详情页。创建循环点击元素后,发现循环项为空。遇到这种情况的时候,别着急,这主要是该网站源代码的特殊结构不适合我们八爪鱼采集。这是一个很少见例子,如果遇到,可以先采集个人物详情页的URL,然后 用URL循环采集详情页信息。

8

9

 

(2)对采集规则多次增删,导致规则配置流程异常


主要原因:有时候在改动规则会弹出“工作流配置异常和选择是否自动修复的提示,如果选择错误则会导致采集出错。另外在制作规则过程中,如果多次对步骤进行增删改动时也很容易导致流程错乱,所以即使手动执行是正确的,单机采集也会有问题。


解决办法:这两种情况下,都建议重新制作一个规则吧!注意第一种情况,建议可以在重新制作规则时反其道而选择是否自动修复。


好啦!经过这两期课程,相信爪子们也掌握了一些独自面对规则错误的技巧,还是那句话,要想成为规则大神,驰骋大数据还是得靠自己多看视频多练习。如果还是搞不掂需要寻求帮助,别羞涩,到八爪鱼论坛(http://bbs.bazhuayu.com/),里面会有不少乐于助人的大神用户,分分钟助你解答疑惑。乖乖学习官网教程,表现好的话我还可以把我们的“镇规之宝Black哥介绍给你,来啊互相调戏啊!

 


欢迎咨询在线客服
加微信群,与更多用户一起交流