网上购买代理IP十分便宜,但是代理IP被爬虫使用的时候要以{“http”: “http://58.218.200.248:2055”}这种字典的形式才可以被使用,所以前面的key命名还蛮头疼的,以下是一个获取代理ip的方法并可以保持为爬虫直接使用的格式,代码是可以直接被使用的哦~~
# coding:utf-8
"""
获取代理IP接口,请求IP构造IP池,IP池是一个json字符串
写入并以列表嵌套字典的格式保存到ip_pool文件下
"""
import requests
import json
import random
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36"
}
# 把购买的代理IP api接口放入url_list
url_list = []
ip_pool = list()
for url in url_list:
response = requests.get(url, headers=headers)
json_info = json.loads(response.text)
for ip in json_info['data']:
ip_pool.append("http://" + ip['ip'] + ":" + str(ip['port']))
with open("./ip_pool", "w") as f:
f.write(json.dumps(ip_pool))
注意:购买IP的时候返回给我们的格式是json格式
希望这篇文章能有效帮助你获取代理IP以及代理IP的格式。