规则名: lagou_java_test

使用的是嵌套样例复刻(我只对内层进行样例复刻, 因为当对外层样例复刻时, 会出现标签重复问题)

出现的问题:

问题演示(见附件):
请问各位前辈, 内容映射是正确的, 为什么样例复刻后, 会改变内容映射了呢?   该怎么解决呢??

本帖子中包含更多资源

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

x
举报 使用道具
| 回复

共 3 个关于本帖的回复 最后回复于 2018-6-30 21:20

沙发
Fuller 管理员 发表于 2018-6-30 17:29:39 | 只看该作者
这个挺奇怪的,我还在测试
举报 使用道具
板凳
Fuller 管理员 发表于 2018-6-30 19:42:48 | 只看该作者


1)你的规则做了一个嵌套整理箱,如果都不做定位标志映射,那就浪费了,没有必要用两层容器。但是这个网页刚好可以用上了。为第一层容器做定位标志映射,用那个UL节点做映射,就会把他的class属性作为定位标志,用于在网页上划定一个采集范围。具体参看: https://www.gooseeker.com/doc/article-344-1.html

2)因为有了最上面的定位标志划定了范围,就可以点击“定位”按钮,设置成绝对定位。如果没有先划定范围,用绝对定位生成的规则的适应性很差

3)重新为企业标签1做内容映射。抓混淆了的原因是:含有企业标签的这行和上面含有薪资的那行有相同的@class值,具体参看《避免不适合的定位标志影响抓取内容》。现在用了绝对定位,就不会使用这些@class和@id值作为定位标志了。


这样改进以后,就可以了

本帖子中包含更多资源

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

x
举报 使用道具
地板
geekfan 初级会员 发表于 2018-6-30 21:20:37 | 只看该作者
Fuller 发表于 2018-6-30 19:42
1)你的规则做了一个嵌套整理箱,如果都不做定位标志映射,那就浪费了,没有必要用两层容器。但是这个网 ...

非常感谢, 完全解决了我的问题  


我本来对定位标志不太理解, 只将定位改成了绝对定位,没有给外层加定位标志, 发现也可以显示全部标签;  

后来看了您的其它帖子, 了解到在整个页面中使用绝对定位,如果网站结构稍微变化, 规则就不能用了;  

于是给外层整理箱加了定位标志, 并使用绝对定位, 这样爬虫不会从 html 头节点开始加载, 而是从定位标志处开始加载, 减短了 Xpath 的长度


举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • 运行Apple无法验证的程序的方法
  • 文本聚类分析软件的安装和使用方法
  • 利用AI阅读和分析文本:扣子COZE记录用户反
  • 在网页片段内直观标注——以B站评论采集为
  • 利用AI阅读和分析文本:使用COZE建设游记文

热门用户

GMT+8, 2024-12-31 01:53