以后再也不用担心写爬虫ip被封,不用担心没钱买代理ip的烦恼了
在使用python写爬虫时候,你会遇到所要爬取的网站有反爬取技术比如用同一个IP反复爬取同一个网页,很可能会被封。如何有效的解决这个问题呢?我们可以使用代理ip,来设置代理ip池。
现在教大家一个可获取大量免费有效快速的代理ip方法,我们访问西刺免费代理ip网址
这里面提供了许多代理ip,但是我们尝试过后会发现并不是每一个都是有效的。所以我们现在所要做的就是从里面提供的筛选出有效快速稳定的ip。
以下介绍的免费获取代理ip池的方法:
优点:免费、数量多、有效、速度快
缺点:需要定期筛选
主要思路:
- 从网址上爬取ip地址并存储
- 验证ip是否能使用-(随机访问网址判断响应码)
- 格式化ip地址
代码如下:
1.导入包
import requests
from lxml import etree
import time
2.获取西刺免费代理ip网址上的代理ip
def get_all_proxy():
url = 'http://www.xicidaili.com/nn/1'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
}
res