采集规则怎么排错?
优采云 发布时间: 2020-08-09 08:25教程中已有详尽的排错图文教程
这里主要讲一下单机采集时碰到问题时,如何排错。单机采集出现问题,大都是因为规则中某个步骤没有执行,网页加载不完全或则步骤的中级选项设置不当。
官网中提供了很实用的排错教程,教程中详尽说明了在优采云中配置规则时,如何自动执行各步骤进行排查,这个是排错中很重要的一步,这里就不再重复。大家可以直接步入教程中心搜索“规则制做排错教程“
优采云采集数据原理:
优采云软件主要是模仿用户浏览网页的操作,比如打开网页、点击元素、输入文字、切换下拉选项、移动滑鼠到元素上。这些我们平常浏览网页也为进行相应的操作。
例子:
进入优采云官网界面(打开网页),鼠标置于产品介绍上(移动滑鼠到元素上),就会弹出一个红色的小框,鼠标移开,黑色方框都会隐藏。然后点击对面的教程中心(点击元素),进入教程中心页面,有个搜索框,输入“规则制做排错教程“(输入文字)。
优采云中还有个牛逼的步骤,循环。这也是我们才能大量采集数据的主要步骤。
循环翻页、循环点击元素、循环输入文本、循环打开网页
优采云主要是依据xpath去定位到元素,然后执行相应步骤。
规则排错主要思路
在自动执行基本没问题后(说明流程基本没有问题),进行单机采集。
然后观察单机采集界面中的网页变化,看网页是否根据每位步骤执行。如果有步骤没有执行,则该步骤出现问题。例如没有点击到详情页,没有循环翻页。重新编辑规则,在规则中的对应步骤重新调试。
下列是按照单机采集出现的问题进行讲解(5个):
1.单机运行,采集不到数据
(1)打开网页后,直接提示采集完成
主要诱因:有些网站的加载会太慢,网页还没有完全加载下来,优采云就执行下一个步骤,当优采云找不到相应的位置时,步骤难以执行,最终造成提取不到数据。
解决方式:可以将网页的超时时间加长,或者在下一个步骤设置执行前等待。让网页有足够长的时间加载。
(2)网页仍然在加载
主要诱因:主要是网站的问题,有些网站的加载会太慢。想要采集的数据没有出现。
解决方式:如果当前步骤是打开网页步骤,可以将网页的超时时间加长。如果是点击元素步骤,而且要采集的数据早已加载下来的时侯,可以在点击元素步骤设置ajax延时,
(3)网页没有步入采集页面
该问题往往是出现在点击元素步骤。有些网页中富含ajax链接时,根据点击位置判定是否须要设置。如果没有设置,在单机采集时会仍然卡在前一个步骤,采集不到数据。
主要诱因:当网页为异步加载时,没有设置ajax延时的话,操作通常不会正确执行,导致规则难以进行下一步,提取不到数据。
解决方式:在相应步骤设置ajax延时,一般是2-3S,如果网页加载时间较长,可以适当降低延时时长。点击元素,循环下一页、移动滑鼠到元素上,这三个步骤中都有ajax设置
例子:下图是采集京东网站下的一个手机商品的评论数据,需要点击商品评价,进入相应的评论页面。单机运行时,网页仍然卡在评论页面,没有评论数据出现。原因就在于点击元素没有设置ajax延时,导致网页没有步入相应的采集界面。
2.单机运行,漏采数据
(1)部分数组没有数据
主要诱因:单机采集时,发现有些数组信息为空,这时候就应当找到相应的采集页面,查看想要的采集的数据是否存在,有时并不是每位网页都富含所有数组信息。如果没有,字段为空是正常的。如果有的话,基本就是xpath定位问题,这时须要更改xpath,准确定位到相应数组。
解决方式:重新打开规则,手动执行验证。如需更改xpath,可以找xpath教程。
例子:下图中预约人数和预约时间出现空值,重新打开规则,手动执行,发现,页面是可以采集到数据(图二)。说明这个主要是网页加载问题,可以在下一个步骤前设置等待时长。第二条数据为空,是因为在第二个详情页本来就没有数据,属于正常。
(2)采集数据条数不对
采集数据条数不对,一般是循环翻页或则网页加载的问题。
有些网页数据须要向上滚动才能加载数据,如果在打开网页时,没有设置足够的向上滚动字数,网页加载下来的数据量也没有自动执行规则时的多。
如果翻页不正确,导致一部分页面的数据难以采集。比如出现不规则翻页,导致部份页面没有打开,数据难以采集。
主要解决方式:如果是翻页问题,修改翻页循环的xpath;如果是网页加载问题,则在打开网页的中级选项中设置滚动次数
例子:在制做规则时,循环选项是80条,而单机采集的时侯,只采集了16条。其中主要的缘由是网页没有设置向上滚动加载,导致加载的条数变少。
3.采集的数据错乱,不是对应信息
(1)多个提取数据步骤