爬虫豆瓣电影评论使用代理还是被 403 了

2017-06-10 13:37:51 +08:00
 cnta

代理 IP 理论上是从网站申请的高匿代理,写的爬虫程序是判断某个 IP 被封了后换一个代理 IP 继续爬。

response=requests.get(url,proxies=proxy).text

但是之后发现爬久了之后返回的 response 是 403 的页面,不用代理 IP 也是 403,难道是发现了我自己主机的 IP 吗?(代理 IP 是可用的)

5673 次点击
所在节点    Python
16 条回复
abcbuzhiming
2017-06-10 16:12:37 +08:00
发现了你的行为是爬虫然后直接封你的代理 ip 而已,现在很多网站都有根据日志进行行为分析的能力,绝大部分人的写的爬虫行为都太机械,操作时间固定严格精确,稍微分析一下就明白操作者不是人类。
prasanta
2017-06-10 16:22:52 +08:00
豆瓣一定很气,明明有接口,还是这么多人爬
popok
2017-06-10 16:44:24 +08:00
@prasanta 哈哈哈,干脆下次 403 页面直接提示用 api 好了
cnta
2017-06-10 16:54:52 +08:00
@abcbuzhiming 但是我的代理 IP 换了也还是被封了,是可以认为使用的代理 IP 没有访问过豆瓣的网页的情况下也被 403 了
cnta
2017-06-10 16:56:23 +08:00
@prasanta 接口似乎访问速率有限制吧
ericFork
2017-06-10 16:57:15 +08:00
豆瓣好可怜,好多学爬虫的新手都拿豆瓣做练手对象
cnta
2017-06-10 16:58:38 +08:00
@ericFork 我是学数据库原理做课设想采集点数据 orz 要求百万条数据左右(本来打算生成),觉得既然如此就采集点真正有意义的数据好玩些--
kkx
2017-06-10 17:02:36 +08:00
user agent 都不加 --
cnta
2017-06-10 17:10:05 +08:00
@kkx 明白了,确实没加 user agent。这里面会暴露出自己用 python 请求网站的信息。应该这里和原因有很大关系,谢谢。但是奇怪的是,如果是按照这个原因来防止爬虫的话,为啥不在开始的时候就 403 呢?而是在我爬取了大概 20 分钟后,对我所有的 ip 进行 403
kkx
2017-06-10 17:25:47 +08:00
@cnta 达到了豆瓣的规则的 limit 了吧 这种属于最基本的 一行代码的事 实时的 有的网站有很多高级的玩法 什么 beacon 啊 javascript 执行啊 路径历史判断啊 到最后只好开一个 selenium 完全拟人操作
herozzm
2017-06-10 17:33:32 +08:00
几秒换一个代理,限制抓取频率
@prasanta 接口没有直接抓取那么全吧
LeoEatle
2017-06-10 19:05:16 +08:00
豆瓣确实有接口,但是使用要求比较高,个人开发者现在是不开放的
dsg001
2017-06-10 19:56:38 +08:00
90%以上的爬虫 demo 都是豆瓣
cnta
2017-06-10 20:11:21 +08:00
@dsg001 还有煎蛋妹子图
creatorYC
2017-06-11 09:16:10 +08:00
@dsg001 还有知乎(斜眼笑)
dsg001
2017-06-11 10:58:04 +08:00
@cnta 好孩子不会爬妹子图

@creatorYC 知乎属于进阶爬虫

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

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

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

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

© 2021 V2EX