网页url:国内高匿免费HTTP代理IP - 快代理
1.请求目标网页,网页源代码
2.构造etree对象
3.在每页的所有数据中,for循环遍历每条信息.
4.解析其中的ip地址和端口号
5.使用此ip请求其他url,验证有效性,以百度为例,有效则添加至列表中.
6.返回列表中的一个随机ip.
ips = []
for j in range(1,3):
url=f"https://www.kuaidaili.com/free/inha/{j}/"
headers= {
'user-agent':"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}
page_text=requests.get(url=url,headers=headers).text
tree=etree.HTML(page_text)
tr=tree.xpath('//div[@id="list"]/table/tbody/tr')
for i in tr:
ip=i.xpath('./td[1]/text()')[0]
port=i.xpath('./td[2]/text()')[0]
proxies_dict = {"http": f"http://{ip}:{port}"}
try:
response=requests.get(url='https://www.baidu.com/',headers=headers,proxies=proxies_dict,timeout=1)
if response.status_code==200:
ips.append(proxies_dict)
except :
pass
ip=random.choice(ips)
return ip
局限性,因为是白嫖的,匿名度过低,很容易被识别出来.