1 13773

加载抓取规则遇到的错误

ym 于 2015-12-2 16:59 发表 [复制链接]
常见问题 > 制作规则—常见问题导航 > 规则怎么查看、修改、另存 > 加载抓取规则遇到的错误

加载抓取规则遇到的错误:
无法定位容器 No.0
无法定位抓取内容 No.1 (情景2);XPath是text()
无法定位抓取内容 No.2 (情景2);XPath是following-sibling::div[position()=1]/span[position()=1]/text()
无法定位抓取内容 No.3 (情景2);XPath是following-sibling::div[position()=1]/span[position()=2]/text()
无法定位抓取内容 No.4 (情景2);XPath是following-sibling::div[position()=1]/a/span/em/text()
无法定位抓取内容 No.5 (情景2);XPath是following-sibling::div[position()=2]/p[position()=1]/text()

当加载规则遇到类似上面”无法定位****“的提示,不一定是规则失效,但肯定是这个网页定位不到映射给整理箱的节点了,而导致这个的原因有:
1)要一模一样的样本网页才会加载正确,即使网址是相同的,但显示出来的页面不是做规则时的那个也是没用的,例如,做了淘宝评论的规则,那么加载规则时,最初显示的页面是宝贝详情,那么就要切换到评论标签里才不会报错,操作:在GS浏览器不勾内容定位,再去点击”累计评论“,切换到评论页面后,再勾上内容定位,然后点击文件菜单->刷新网页结构->分析页面,就能正确加载了。


2)网页结构改变,导致定位不到某些网页节点,可能是网站改版导致规则的部分抓取内容映射失效,那么就要调试规则重新映射,参考调试规则教程;也可能是(电商)商品下架,这种情况切换一个样本页就可以,切换样本页的操作看《修改规则时是否可以更换样本页面》
网页结构改变,检查和修改的操作参考《怎样解决规则采集失败/遗漏的问题》


3)规则有漏洞,需要优化规则。
虽然规则测试时是正常的,但是加载规则甚至采集数据还是可能失败,优化方法有:
对整理箱做上定位标志映射,虽然定位标志映射不是必须的,但是会提高定位的精确度,加载规则时可以防止定位失败,除非是网页结构改变,否则不会有定位失败的情况,定位标志映射看教程《定位标志:精确采集范围》

   上面说的大多是整理箱定位失败的情况,实际上,爬虫路线里的线索定位失败也会报这样的错,原因有:
1)如果是很长的JavaScript网页(只显示当前屏幕的信息,一边加载一边显示,例如电商网站、微博),应该是底部网页没有加载上来,那么就要把网页滚屏到底部,再选择文件菜单->刷新网页结构->后续分析
2)网页结构改变,如果是翻页线索的话,那就可能是翻页区的结构改变了,那就要重新映射


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
举报 使用道具
| 回复

共 1 个关于本帖的回复 最后回复于 2015-12-14 18:42

Fuller 管理员 发表于 2015-12-14 18:42:42 | 显示全部楼层
“容器”包含“抓取内容”,如果抓取内容定位失败,那么他的容器必然失败,所以,检查问题的顺序:先从抓取内容开始检查。
另外,编号是从0开始的,这点要注意
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • 利用AI阅读和分析文本:扣子COZE记录用户反
  • 在网页片段内直观标注——以B站评论采集为
  • 利用AI阅读和分析文本:使用COZE建设游记文
  • 使用AI工具Kimi生成python代码为文本分析结
  • 苹果mac电脑安装集搜客网络爬虫软件失败的

热门用户

GMT+8, 2024-10-11 19:23