scrapy 爬取知乎内容,发现获取的和原网页不一样啊,请问这是什么原因?

2017-04-05 19:53:55 +08:00
 201341
新手刚开始学习. https://segmentfault.com/q/1010000008939688 这里有详细描述.谢谢.
4721 次点击
所在节点    Python
15 条回复
cosmic
2017-04-05 19:57:45 +08:00
这是反爬策略吧
201341
2017-04-05 19:59:58 +08:00
@cosmic 用到什么策略,可以详细说说吗?还有如何解决呢?谢谢.
sleeperqp
2017-04-05 20:01:00 +08:00
你可以用 chromedrive 试试 如果还是不一样 那就说明确实有反爬的问题~
zsz
2017-04-05 20:18:31 +08:00
可能是页面异步获取了其他内容,所以直接抓取看不到,其中策略比较多

有问题可以加我们的群问,这样效率更高,这个群是一群工程师组建的面向初学者的 python Linux 学习群( qq 群号: 278529278 ) 非商业性质,拒绝广告,只接收真正想学这方面技术的朋友,交流学习,申请请说明来自 v2ex
we3613040
2017-04-05 20:31:56 +08:00
好多异步请求
201341
2017-04-05 20:51:16 +08:00
我也以为是异步,可是禁用 js 后的页面和我获取的页面还是不一样
201341
2017-04-05 20:52:00 +08:00
201341
2017-04-05 20:52:32 +08:00
@sleeperqp 好的,我试试..谢谢.
googlebot
2017-04-05 22:04:32 +08:00
javascript ,
fffflyfish
2017-04-05 22:53:36 +08:00
直接抓现成的 json 包,伪装客户端发包
killerv
2017-04-06 10:09:13 +08:00
你说的原网页是指的网页源代码还是审查元素?审查元素的代码是经过 js 渲染过的,不一样是很正常的,这个要以网页源代码的为标准,如果网页源代码和爬虫爬的不一样,另说,有可能是防爬。
201341
2017-04-06 11:09:52 +08:00
@killerv 网页源代码不一样...主要是一个 css 文件不一样,结果导致我写的 xpath 和 response.css 全部为空...这种是防爬吗?
killerv
2017-04-06 11:43:55 +08:00
@201341 应该是防爬了,防爬一般来就是根据 header 和 cookie 下文章,再有就是根据 ip 频率
201341
2017-04-06 13:13:23 +08:00
@killerv 不是防爬,还是 js 问题,我用 selenium+Phantomjs 成功解决.
killerv
2017-04-06 13:18:20 +08:00
@201341 如果是 js 问题,那么网页源代码和你抓取的应该是一样的,你用 Phantomjs ,还是因为有些 dom 是 js 动态生成的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/352748

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX