快捷导航
怎么爬取百度搜索关键词之后的各结果打开后的内容、拜托了
举报 使用道具
| 回复

共 23 个关于本帖的回复 最后回复于 2017-10-13 14:26

bowieD 高级会员 发表于 2017-9-14 09:22:59 | 显示全部楼层
用连续点击动作和层级抓取
1,第一规则中定义输入和点击动作,去输入关键词和点击搜索。参考《连续动作》
2,第二级规则把搜索出来的结果的网址做内容映射和样例复制,就能抓取百度搜索关键词之后的各结果的网址,并把网址作为下级线索,指向第三级
3,第三级规则爬取百度搜索关键词之后的各结果打开后的内容,参考《层级抓取》
举报 使用道具
Lucky嗨嗨 初级会员 发表于 2017-9-14 17:42:45 | 显示全部楼层
bowieD 发表于 2017-9-14 09:22
用连续点击动作和层级抓取
1,第一规则中定义输入和点击动作,去输入关键词和点击搜索。参考《连续动作》
2 ...

您说的这个我之前就是按着这个思路去做的、我说的问题是在这个过程中遇到的问题……而且我发现这个方法只适用于京东、淘宝等二级网站打开后是相同结构的网页,对于百度搜索关键来说,每一个搜索出来的结果打开之后网页的结构是不同的,所以没有办法抓取,请问您有什么好的办法吗?

举报 使用道具
Fuller 管理员 发表于 2017-9-14 18:21:05 | 显示全部楼层
Lucky嗨嗨 发表于 2017-9-14 17:42
您说的这个我之前就是按着这个思路去做的、我说的问题是在这个过程中遇到的问题……而且我发现这个方法只 ...

百度搜到的网页结构各不一样,只能采集整个body中的内容,或者整个html片段,或者只要文本内容。具体可以参看《采集html源码
举报 使用道具
Lucky嗨嗨 初级会员 发表于 2017-9-14 21:56:06 | 显示全部楼层
非常感谢、我试着做做
举报 使用道具
Lucky嗨嗨 初级会员 发表于 2017-9-14 23:46:50 | 显示全部楼层
Fuller 发表于 2017-9-14 18:21
百度搜到的网页结构各不一样,只能采集整个body中的内容,或者整个html片段,或者只要文本内容。具体可以 ...

我试着做了、可以采集HTML码,但是我还是想只采集文本内容、是网页的文本内容?有什么办法吗
举报 使用道具
bowieD 高级会员 发表于 2017-9-15 09:18:35 | 显示全部楼层
本帖最后由 bowieD 于 2017-9-15 09:25 编辑

1,想要采集哪一部分的内容,就把那一部分的区块节点映射给抓取内容。

2,要抓整块的话,需要在整理箱上为抓取内容设置 “高级设置”,里面有“抓取特定内容”->“文本内容”。


3,想要网页的整个html源码,可以直接对html节点做映射,然后高级设置里选择网页片段,最后保存规则《怎样抓取网页上一整块内容》


举报 使用道具
Lucky嗨嗨 初级会员 发表于 2017-10-11 20:24:53 | 显示全部楼层
Fuller 发表于 2017-9-14 18:21
百度搜到的网页结构各不一样,只能采集整个body中的内容,或者整个html片段,或者只要文本内容。具体可以 ...

可不可以帮我看看我的一个规则啊?名字是:地质信息产品、第二层主题名称是:地质信息产品二级,我的规则中其中“摘要”用的是xpath精确定位,我第一次用,不知道哪里出错了,导致excel表里的700多条摘要都是一样的!另外为什么我的下级爬出来的文本内容并不全啊?
1.png
举报 使用道具
Fuller 管理员 发表于 2017-10-11 21:29:53 | 显示全部楼层
Lucky嗨嗨 发表于 2017-10-11 20:24
可不可以帮我看看我的一个规则啊?名字是:地质信息产品、第二层主题名称是:地质信息产品二级,我的规则 ...

你的xpath表达式用了绝对定位
  1. //*[@class='c-abstract'] | //*[@class='result-op c-container xpath-log']/p
复制代码
两个斜线就表示从网页最顶上的html节点开始定位。
而是应该相对于每个样例的定位。正确的做法是:
1,先只做内容映射
2,完成后点击测试按钮,看“数据规则”
3,找到那个节点的xpath,一般是.//或者./或者*//开头的,或者直接是节点,这就是相对定位,相对于每个样例的定位表达式
4,编辑这个xpath,改成你想要的

你的那个xpath稍微改一下就行
  1. .//*[@class='c-abstract'] | .//*[@class='result-op c-container xpath-log']/p
复制代码
每个前面加一点


举报 使用道具
Lucky嗨嗨 初级会员 发表于 2017-10-11 21:36:16 | 显示全部楼层
Fuller 发表于 2017-10-11 21:29
你的xpath表达式用了绝对定位两个斜线就表示从网页最顶上的html节点开始定位。
而是应该相对于每个样例的 ...

我试了一下,用了xpath定位还是不行,您可以看一下,摘要还是采集的不全,可是摘要的xpath我没找错啊,合并不对吗?

2

2

1

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

精彩推荐

  • 百度推广后台数据DIY
  • 采集表单中的input动态内容
  • 采用刷新动作实现手机页面采集
  • 通过划定滚轮范围实现精确点击手机页面
  • 放大或者缩小页面便于采集手机网页内容

热门用户

集搜客GooSeeker网络爬虫 ( 粤ICP备11065265号-2 )

GMT+8, 2017-11-18 19:42