python爬虫—-requests代理及是否有效判定

 

1.不带用户名和密码

不多说直接贴代码:

 proxy = {
                kind:  ip + ":" + port
 }
 proxy_resp = requests.get('http://www.baidu.com', headers = head, proxies = proxy)

kind:是代理类型。有HTTP和HTTPS

ip: ip地址

port:端口号

2.带用户名和密码

proxies = {
    "http": "http://user:pass@10.10.1.10:3128/",
}
 proxy_resp = requests.get('http://www.baidu.com', headers = head, proxies = proxy)

 

除了表单构造不同外其它一致。

3. 判断代理是否可用,使用多线程。

写入成txt

class proxy_is_use(Thread):

    def __init__(self, proxy_list):
        Thread.__init__(self)
        # 代理队列
        self.proxy_list = proxy_list #队列
    def run(self):
        head = {
            'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36'
        }
        while not self.proxy_list.empty():
            proxy = self.proxy_list.get()
            print(proxy)
            resp = requests.get('http://www.baidu.com',headers = head,proxies = proxy)
            print(resp.status_code)
            if resp.status_code ==200:
                with open('ip.txt','a+',encoding='utf-8') as f:
                    f.write(proxy['HTTP'] + "\n")

 

 

 

文章已创建 52

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部