不是反爬造成的,详细解释参看:http://www.gooseeker.com/res/detail_94295.html 的规则介绍部分。
参看下图:
请注意红框,表示在网页上“发布时间”,“单价”,“总价”所用的网页结构都一样,定义规则的时候,GooSeeker程序自动会用div-cun这个标志做定位,就出现了都采集成发布时间这个结果了。解决方案如下:
这个抓取规则需要一点小技巧,因为在网页上,发布时间、单价和总价所用的html标签和属性完全一样,如果要同时抓取这三个内容,大家都抓成发布时间。这是因为抓取规则自动定位网页上的位置的时候,自动使用了div[@class='div-cun']/text()这个表达式。
要解决这个问题,
1)要么自定义xpath。
2)如果嫌麻烦,就用个小技巧,选择包含这三块内容的总DIV(请看蓝色框所示),在网页上的位置是div[@class='dealType'],使用他的@class作为定位标志,也就是选择这个div,做定位标志映射,都映射给这3个抓取内容(请看右边蓝色框,这是映射后的效果),这样,GooSeeker爬虫会自动计算出他们所在的位置是在这个总div下的不同节点。
请看抓取结果示例:
|
共 1 个关于本帖的回复 最后回复于 2015-10-17 17:55