python验证代理IP

本文介绍了一种利用Python多线程技术批量验证IP代理有效性的方法。通过读取预先收集的IP地址列表,该程序使用线程锁来并发地验证每个IP代理是否能成功连接到指定网站(如百度)。如果请求成功,则认为该IP代理有效。
摘要由CSDN通过智能技术生成

接上一篇保存的IP地址,进行验证

# -*- coding: utf-8 -*-
import requests
from threading import Thread
import threading


get_ip = open('get_ip.txt','r')

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0'}
lock = threading.Lock() #使用线程锁

#利用多线程,在新浪IP接口上,验证IP
def verify_ip():

    url = 'http://www.baidu.com'  # 新浪IP接口
    try:
        # 先要获取锁:
        lock.acquire()
        ip = get_ip.readline().strip()
        #解开锁
        lock.release()

        proxies = {'http': ip}

        r = requests.get(url, headers=headers, proxies=proxies,timeout=5)
       #如果requests成功,表示验证成功,打印出IP
        print ip

    except:
        pass

thread_all = []
for i in range(100): #根据情况决定

    t = Thread(target=verify_ip)
    thread_all.append(t)
    t.start()

for t in thread_all:
    t.join()

get_ip.close()

 

转载于:https://www.cnblogs.com/fg2312/p/7489454.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值