优采云数据采集规则排错方式
优采云 发布时间: 2020-08-22 18:36优采云数据采集规则排错方式
如果用优采云配置规则,采集数据出现异常,我们怎么快速找出并解决问题?如何更好与客服沟通?
本教程将讲解规则排错的基本思路与技巧。
一、手动执行规则
做好采集规则之后,我们最好自动执行一下规则,检查规则是否满足采集需求。
手动执行规则是哪些意思?打开流程图界面,按照从上至下,由内而外的逻辑(点击查看 流程执行逻辑教程),将每位步骤都点击一遍,并观察点击步骤后的页面情况。如果符合预期,没问题。如果不符合预期,则须要更改。
1、手动执行规则,符合预期
特别说明:
a. 在点击【循环列表】时,最好选择除第1项以外的项,防止循环只对第1个项有效。
b. 在【打开网页】和【点击元素】后,如果数据早已出现了,但浏览器还在绕圈
,可按
强制停止加载,方便步入下一个步骤。
例:采集豆瓣图书列表数据。手动执行一下规则,运行顺畅并采集到数据。没问题。
2、手动执行规则,不符合预期,可能有以下几种现象:
2.1、点击某个步骤后无响应
原因①:XPath定位不准,需更改定位XPath,点击查看XPath教程。
原因②:多次更改此步骤造成底层代码错乱,需删除此步骤重做一遍。
2.2、提取到的数据不精准
表现为数据重复、数据错位、数据漏采等多种情况。提取数据不精准通常是在运行本地采集,拿到一些数据后更容易发觉的。
因此,我们在下文 二、运行本地采集中详尽讲。
二、运行本地采集
将任务启动本地采集。观察任务的采集状态,进而剖析问题、解决问题。下面是一些常见的问题和解决方式汇总。
1、手动执行规则有数据,启动本地采集后,很快提示:【采集已停止】
原因①:网页打开过快,但实际要采集的数据还未出现。需为【打开网页】后的步骤设置【执行前等待】,具体请参考 执行前等待教程。
2、手动执行规则有数据,采集速度太慢,在个别步骤长时间等待
原因①:网页本身打开太慢,例如一些美国网站。如果打开慢且数据出现慢,没办法只能等。如果打开慢但数据出现快,可借助Ajax超时强制结束加载。具体请参考Ajax教程。
原因②:Ajax网页未设置Ajax超时。需在相应步骤设置Ajax超时。具体请参考 Ajax教程。
原因③:流程中层级过多,有很多点击元素或执行前等待。可依照网页采集需求和加载状况进行规则优化。
3、数据重复
3.1、【循环-提取数据】类规则,重复采集每页第1条数据
原因①:循环中的【提取数据】步骤,未勾选【采集当前循环中设置的元素】,需勾选上
原因②:采集的数组未勾选【相对XPath】,需勾选上且写对,查看相对XPath教程
3.2、【循环-点击元素-提取数据】类规则,重复点击每页第1个链接
原因①:【点击元素】步骤,未勾选【点击当前循环中设置的元素】,需勾选上
3.3、重复采集某几页
原因①:翻页的定位XPath有问题,需自动更改定位XPath。具体可参考XPath教程。
4、数据错位
原因①:字段的定位XPath有问题,需自动更改定位XPath。具体可参考数组提取不到,字段提取错位怎样处理
5、数据漏采(部分数组漏、部分循环项漏、整页漏)
原因①:网页上的数组/循环项/翻页按键没加载下来。需设置执行前等待,让其加载下来。具体请参考执行前等待教程
原因②:字段/循环项/翻页的XPath定位不准。需更改定位XPath,使得XPath适用于所有同类网页。具体可参考XPath教程。
原因③:网页未设置【页面滚动】。有的网页数据需设置【页面滚动】才会加载完全,具体请查看 页面滚动教程。
当我们的规则,手动执行和运行【本地采集】都没问题之后,就可以进行【云采集】了。如果自动执行和运行【本地采集】都有数据,【云采集】无数据,一般有什么缘由呢?
三、运行【云采集】
1、网页防采集
1.1、IP被封
原因:部分网站采用非常严格的封IP举措(跳到登入页面等),云采集使用一个节点长时间采集后,出现此节点ip被封禁,不能正常采集到数据的情况。
解决方式:使用代理IP,分配给任务多个节点,并让多个节点空闲,避免任务在同一个云端同一个IP上采集。
1.2、出现验证码
原因:部分网页采集过程中会出现验证码,需正确输入验证码后才会进行数据采集。
解决方式:设置验证码手动辨识;设置执行前等待 降低采集速度,将任务细分采用少量多次的提取方法。
2、cookie访问限制
原因:规则中使用了cookie登陆,本地采集的时侯可正常调用本地缓存的cookie。启动云采集后,云采集使用云端服务器节点,是新的ip,没有登陆cookie,不能以登陆状态打开要采集的网页
解决方式:在规则中加入帐号密码登入步骤,具体请查看教程 需要登入的网页(含登陆时有验证码)
(★有的网站不支持多ip登陆,此类网站的采集规则,需勾选【云采集不分拆任务】)
3、云端问题-云服务器带宽较小
原因:云端带宽较小,造成本地打开平缓的网站在云端打开愈发漫长,一旦超时都会打不开网站或者加载不下来数据导致跳过此步骤
解决方式:把打开网址的超时时间或则下一步的执行前等待时间设置久一些。也可设置重试条件,让其在未正常打开时重试。具体请看 重试教程
4、规则问题-增量采集
原因:云采集具有增量采集功能:根据url判定是否采集过,第一次采集后,后续不会再采集已采集过的url。如果是列表信息采集,如果后续有降低新增列表,但url没有发生改变,优采云会跳过此条url不采集
解决方式:关闭增量采集。
四、快速排错的小技巧
1、提取数据降低提取网页页脚
帮助我们快速定位数据采集从哪一页开始出现问题
2、提取数据降低提取网页网址
提取不到数组时,帮助我们快速检测网页情况,是网页本身的问题(网址失效、本身无此数组),还是优采云问题(无法正常打开网页、XPath定位不准等)
3、提取数据降低提取网页源码
常见于云采集,便于我们查看采集任务在云上的运行环境。