欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

打造自己的ip代理池

时间:2023-08-21

        在爬虫时经常需要使用代理,于是我爬取了一个可以免费提供代理的网址,从中获取免费代理,从而打造属于一个自己的代理池。

        如图所示,这是网址的界面展示,我们需要做的就是需要其中的ip、port列中的数据,获取数据后需要我们拼接成一个完整的IP然后保存即可,代码如下:

import requestsfrom lxml import etreeimport osurl = 'https://www.kuaidaili.com/free/inha/3/'headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36' }content = requests.get(url,headers = headers).textresonse = etree.HTML(content)tr_list = resonse.xpath('//div[@id="list"]/table/tbody/tr')#print(tr_list)ip_list = []for tr in tr_list: ip = tr.xpath('./td[1]/text()') port = tr.xpath('./td[2]/text()') proxy_ip = ip[0] +':' + port[0] #print(proxy_ip) ip_list.append(proxy_ip)print(ip_list)

        代码运行后获取到完整的ip数据,接下来我们就可以使用这些代理了,这里需要使用random来随机选择一个ip。

 

proxy=random.choice(ip_list) #本地代理proxies={ 'http':'http://'+proxy, 'https':'https://'+proxy}try: response=requests.get('网址',proxies=proxies) print(response.text)except requests.exceptions.ConnectionError as e: print('错误:',e.args)

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。