python爬虫设置代理ip池——方法

在使用python爬虫的时候,经常会遇见所要爬取的网站采取了反爬取技术,高强度、高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,那如何解决呢?使用代理ip,设置代理ip池。

以下介绍的免费获取代理ip池的方法:

优点:

1.免费

缺点:

1.代理ip稳定性差需要经常更换

2.爬取后ip存在很多不可用ip需要定期筛选

小建议:

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

"""

一.主要思路

1.从代理ip网站爬取IP地址及端口号并储存

2.验证ip是否能用

3.格式化ip地址

4.在requests中使用代理ip爬取网站

二. 写在前面

在Requests中使用代理爬取的格式是

import requests

requests.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

三.代码

1.配置环境,导入包

2.获取网页内容函数

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

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

5.调用代理

好啦,爬虫的小伙伴可以去领取免费的代理IP试一下啦!

国内高质动态IP。时效2-10分钟,注册免费领取一万代理IP。注册地址

电脑:

代理云 - 可视化用户控制台​console.v4.dailiyun.com/user/?channel=wym

手机:

代理云 - 可视化用户控制台​console.v4.dailiyun.com/user/mobile/?channel=wymM