
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地址继续进行访问。所以,这个时候你就可以设置... [阅读全文]
最新标签
推荐阅读
03
2018-12
爬虫有哪些分类?常见的几种网络爬虫
虽说爬虫可以爬取网页,获得大量的数据,但也不是所有爬虫都能实现这些功能,爬虫也有分类,不同的爬虫能够实现的功能是不一样的,那么爬虫有哪些分类?
10
2019-04
出色的爬虫就不需要代理IP了吗?
出色的爬虫就不需要代理IP了吗?网络上承载着海量的网站的信息,爬虫的也要耗费巨大的工作量,因此爬虫程序的性能是十分关键的。不同的应用对应的爬虫也不一样,相对的战略都不一样,
05
2019-08
发大量贴需要用代理ip
网络推广每天都要发布非常多的信息,甚至几百条,如果大量发布信息的时候,一直使用一个IP地址,IP地址肯定会被封。很多网站都具有限定,如果访问的次数过多,发布的消息过多都会被封IP
05
2019-03
爬虫抓取数据为什么要用代理IP
大家关注黑洞代理,可以知道黑洞代理是一个可以更换IP地址的软件,除此之外,还可以通过API接口提取代理IP的,因此不管是做爬虫抓取数据还是其他一些换IP的项目都是适用的。为什么怎么说
热门文章