当前位置:  开发笔记 > 编程语言 > 正文

python请求bot检测?

如何解决《python请求bot检测?》经验,为你挑选了1个好方法。

我一直在使用该requests库来挖掘这个网站.我没有在10分钟内提出太多要求.说25.突然间,网站给了我404错误.

我的问题是:我在某处读到,使用浏览器获取URL与获取类似于某个URL的URL不同requests.因为requests获取不会获得cookie和浏览器的其他内容.是否可以选择requests模拟浏览器,以便服务器不认为我是机器人?或者这不是问题吗?



1> alecxe..:

基本上,你可以做的至少一件事是发送User-Agent标题:

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20100101 Firefox/20.0'}

response = requests.get(url, headers=headers)

此外requests,您可以使用selenium模拟真实用户- 它使用真正的浏览器 - 在这种情况下,显然没有简单的方法可以区分您的自动用户与其他用户.Selenium也可以使用"无头"浏览器.

另外,检查您正在抓取的网站是否提供了API.如果没有API或您没有使用它,请确保您知道该网站是否真的允许这样的自动网络爬行,研究Terms of use.你知道,在一段时间内请求过多后,他们可能会阻止你.

另见:

使用Python中的Requests库发送"User-agent"

使用Python和PhantomJS进行无头硒测试

推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有