Python爬虫动态ip代理防止被封的方法

yipeiwu_com6年前Python爬虫

在爬取的过程中难免发生ip被封和403错误等等,这都是网站检测出你是爬虫而进行反爬措施,在这里为大家总结一下怎么用IP代理防止被封

首先,设置等待时间:

常见的设置等待时间有两种,一种是显性等待时间(强制停几秒),一种是隐性等待时间(看具体情况,比如根据元素加载完成需要时间而等待)图1是显性等待时间设置,图2是隐性

第二步,修改请求头:

识别你是机器人还是人类浏览器浏览的重要依据就是User-Agent,比如人类用浏览器浏览就会使这个样子的User-Agent:'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36'

第三步,采用代理ip/建代理ip池

直接看代码。利用动态ip代理,可以强有力地保障爬虫不会被封,能够正常运行。图1为使用代理ip的情况,图2是建ip代理池的代码,有没有必要需要看自己的需求,大型项目是必须用大量ip的。

做好以上3个步骤,大致爬虫的运行就不成问题了。
做好以上3个步骤,大致爬虫的运行就不成问题了。

以上就是本次介绍的全部内容,感谢大家的学习和对【听图阁-专注于Python设计】的支持。

相关文章

Python3.4编程实现简单抓取爬虫功能示例

本文实例讲述了Python3.4编程实现简单抓取爬虫功能。分享给大家供大家参考,具体如下: import urllib.request import urllib.parse imp...

python实现的一只从百度开始不断搜索的小爬虫

文中用到了BeautifulSoup这个库, 目的是处理html文档分析的, 因为我只是提取了title的关键字,所以可以用正则表达式代替, 还有一个库是jieba, 这个库是中文分词的作用, 再有一...

python 每天如何定时启动爬虫任务(实现方法分享)

python2.7环境下运行 安装相关模块 想要每天定时启动,最好是把程序放在linux服务器上运行,毕竟linux可以不用关机,即定时任务一直存活; #coding:utf8 im...

实例讲解Python爬取网页数据

一、利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('...

解决python爬虫中有中文的url问题

解决python爬虫中有中文的url问题

如果URL中存在中文,而你却不对它做任何处理,他不会达到你所想的那样,因此我们需要将中文部分进行处理,要用到urllib.parse模块中的quote将中文转化成URL所需的编码,url...