在爬虫的时候,我们需要用到代理IP来避免,而当我们得到了IP之后,该如何验证这些IP是不是有效的呢?这时候我们可以使用Spyder(anaconda自带了一个Python的编辑器),输入购买的IP来模拟访问某一个网站,若多次未成功访问,则说明哪些代理无效的。
1.提取代理
首先,你需要购买ip(作者此处选择的是“私密代理”,更适合用于爬虫),购买后进入订单提取代理ip,点击立即提取:
点击立即提取后会跳出如下页面,提取生成的代理ip:
2.验证代理有效性
代码如下:
import requests
import random
import time
http_ip = [
'1.199.184.66:16569',
'183.149.113.148:21009',
'115.229.22.91:18784',
'125.87.86.222:21912',
'124.229.245.68:22119'
]
for i in range(10):
try:
ip_proxy = random.choice(http_ip)
proxy_ip = {
'http': ip_proxy,
'https': ip_proxy,
}
print('使用代理的IP:', proxy_ip)
response = requests.get("http://httpbin.org/ip", proxies=proxy_ip).text
print(response)
print('当前IP有效')
time.sleep(2)
except Exception as e:
print(e.args[0])
print('当前IP无效')
continue
运行结果如下:
领取专属 10元无门槛券
私享最新 技术干货