多语言展示
当前在线:1343今日阅读:183今日分享:19

利用爬虫代理池,再也不怕封IP了

思路: 先在从网上爬取一个代理列表,做代理池,并保存在本地http_list.txt和https_list.txt中,然后从中随机池取出一个ip做代理。 本代码是从用webdriver模拟chrome浏览器 618ip提取代理的(因为这个网站有发爬虫,就直接用webdriver快速搞定,这么一个小网站,就懒得去研究它的反爬了)。爬取成功会返回响应代码200。经常会遇见所要爬取的网站采取了反爬取技术,高强度、高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,那如何解决呢?使用代理ip,设置代理ip池。
方法/步骤
1

以下介绍的免费获取代理ip池的方法: 优点:1.免费 缺点:1.代理ip稳定性差需要经常更换2.爬取后ip存在很多不可用ip需要定期筛选

2

小建议: 该方法比较适合学习使用,如果做项目研究的话建议参考本人博客《python爬虫设置代理ip池——方法(二)》,购买稳定的代理ip

3

一.主要思路 1.从618ip网站爬取IP地址及端口号并储存 2.验证ip是否能用 3.格式化ip地址 4.在requests中使用618ip提取网站---------------------二. 写在前面 在Requests中使用代理爬取的格式是import requestsrequests.get(url, headers=headers,proxies=proxies)其中proxies是一个字典其格式为:对每个ip都有proxies = {http: 'http://114.99.7.122:8752'https: 'https://114.99.7.122:8752'}注意:对于http和https两个元素,这里的http和https代表的不是代理网站上在ip后面接的类型代表的是requests访问的网站的传输类型是http还是https 你爬的网站是http类型的你就用http,如果是https类型的你就用https,在代理网站上爬的时候也要分别爬http或https的ip

4

三.代码 1.配置环境,导入包

5

2. 获取网页内容函数

6

2. 从代理ip网站获取代理ip列表函数,并检测可用性,返回ip列表

7

2. 从ip池中随机获取ip列表

推荐信息