首页 > 编程知识 正文

免费代理ip获取,手机代理抓包

时间:2023-05-05 22:27:48 阅读:197910 作者:1995

简单介绍下一个chrome Xpath工具
xpath详解

个人还一个小窍门在我们浏览器开发者模式里快捷键f12如下图我想要拿到这句话的xpath路径

先点击左下角那个小箭头然后点你想要的那句话底部就会出来对应的标签,然后我们右键那个标签会出现一个copy然后选择copy xpath我们就成功拿到我们想要的那个路径了,当然这样拿到的路径是繁琐的,还是要自己真正掌握xpath.下面上代码爬取西刺代理的高匿IP并检测IP的有效性,因为很多免费的IP是不能用的

import timeimport requestsfrom lxml import etreedef get_all_proxy(): #观察西刺代理的高匿页面翻页时候是每页从1往上加的一共3602页遍历页面 for s in range(1,3603): url = "https://www.xicidaili.com/nn/" + str(s) 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', } response = requests.get(url, headers=headers) #保存西刺代理页面xcdl.html with open('xcdl.html', 'wb') as f: f.write(response.content) html_ele = etree.HTML(response.text) #xpath拿到IP和端口路径 ip_eles = html_ele.xpath('//tr/td[2]/text()') port_ele = html_ele.xpath('//tr/td[3]/text()') print(len(ip_eles)) print(len(port_ele)) #把IP和端口添加到列表里 proxy_list = [] for i in range(0,len(ip_eles)): proxy_str = 'http://' + ip_eles[i] + ':' + port_ele[i] proxy_list.append(proxy_str) return proxy_list#利用访问百度测试IP有效性def check_all_proxy(proxy_list): valid_proxy_list = [] for proxy in proxy_list: url = 'http://www.baidu.com/s?wd=ip' proxy_dict = { 'http': proxy } try: response = requests.get(url, proxies=proxy_dict, timeout=1) if response.status_code == 200: print('代理可用:' + proxy) valid_proxy_list.append(proxy) else: print('代理超时') except: pass print('代理不可用--------------->') return valid_proxy_list#检测时间if __name__ == '__main__': start_time = time.time() proxy_list = get_all_proxy() valid_proxy_list = check_all_proxy(proxy_list) end_time = time.time() print('--'*30) print(valid_proxy_list) print('耗时:' + str(end_time-start_time))

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。