qq:800819103
在线客服,实时响应qq群
在线客服,实时响应客服电话
13318873961当我们使用Python爬虫对一个网站进行爬取的时候,一般都会频繁的对该网站进行访问。假设一个网站可以检测到在某一个时间段内,某个IP地址的访问次数,如果该IP地址还是在某一个时间段内继续访问没并且访问次数远远超过正常用户的访问次数状况,那么该网站就会禁止该IP地址继续进行访问。所以,这个时候你就可以设置一些代理服务器来帮助你做工作,每次访问时间过长或者事访问频率特别高的时候,你就换一个IP代理,这样就不会出现因为频繁访问而导致禁止访问的现象。
我们在学习Python爬虫的时候,也经常会遇见所要爬取的网站采取了反爬取技术导致爬取失败。高强度、高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,所以下面这篇文章讲述一个爬虫技巧,设置代理IP
这里介绍一款代理IP,犀牛代理,直接提取就可是使用
配置环境
安装requests库
安装bs4库
安装lxml库
具体代码
话不多说直接上代码吧
函数get_ip_list(url, headers)传入url和headers,最后返回一个IP列表,列表的元素类似122.114.31.177:808格式,这个列表包括国内髙匿代理IP网站首页所有IP地址和端口
函数get_random_ip(ip_list)传入第一个函数得到的列表,返回一个随机的proxies,这个proxies可以传入到requests的get方法中,这样就可以做到每次运行都使用不同的IP访问被爬取的网站,有效地避免了真实IP被封的风险
proxies的格式是一个字典: {‘http': ‘http://122.114.31.177:808‘} ,可以将下面的执行也封装为方法
对于抓取IP这个,西刺代理的服务器做了反爬处理,如果你频繁去抓取的话,服务器会主动返回503错误,提示block,所以在请求的时候可以先一次请求完保存一个文件,来读取这个文件,或者爬取一个ip使用几分钟后,再去爬取一次,相当于加一个定时功能
代理IP的使用
运行上面的代码会得到一个随机的proxies,把它直接传入requests的get方法中即可
相关文章内容简介
1 我们为什么要设置代理IP?
我们为什么要设置代理IP 当我们使用Python爬虫对一个网站进行爬取的时候,一般都会频繁的对该网站进行访问。假设一个网站可以检测到在某一个时间段内,某个IP地址的访问次数,如果该IP地址还是在某一个时间段内继续访问没并且访问次数远远超过正常用户的访问次数状况,那么该网站就会禁止该IP地址继续进行访问。所以,这个时候你就可以设置... [阅读全文]
最新标签
推荐阅读
12
2019-07
Python爬虫到底有啥好处?
很多语言都可以写网络爬虫,区别不大,原理就是利用好正则表达式。突然有一天,小编发现网络中Python爬虫开始盛行,到底Python爬虫有啥好处?
12
2019-07
高匿代理ip风险系数极低
高匿代理ip风险系数极低,不同其他的代理ip,用着用着就被发现了,高匿代理ip拥有极高的匿名效果的,这点大家不必担心。
29
2018-11
怎么低成本获取大量IP?建立IP池
换IP的方法不少,比如通过重启路由器、手机开飞行模式等等,但这些换IP的方式只能少量换取IP,如果需要大量IP怎么办?怎么低成本获取大量IP?黑洞代理小编为介绍一下大量IP的获取方法。
19
2019-01
为什么要对IP进行动态管理?用动态IP地址有什么好处?
大部分人都是知道关于IP的,一个设备没有IP地址是无法上网的,不管是手机还是电脑、平板或是其他的设备要想连接网络,那必须有要个IP地址。全球几十亿的人上网,哪里来这么多的IP地址?
热门文章