如何判断代理ip是否能用?

最新资讯发布日期:2021-02-20

image.png

一般我们想要快速验证代理IP是否可用,只能使用VBA或者python3.7,如果在我们不知道协议、账号和密码的情况下,只能测试连接是否可用了。仅需要一段代码就可以实现了,大家感兴趣的不妨跟着小编一起尝试下!

第一步、准备好ip地址

image.png

第二步、验证是否可用

from concurrent.futures import ThreadPoolExecutor, as_completed
import socket
 
def try_connection(ip_port):
    s = socket.socket()
    s.settimeout(5)
    try:
        s.connect(ip_port)
    except socket.timeout as e:
        info = ip_port[0] + ':' + str(ip_port[1]) + ' 超时'
    except socket.error as e:
        info = ip_port[0] + ':' + str(ip_port[1]) + ' ' + str(e)
    else:
        info = ip_port[0] + ':' + str(ip_port[1]) + ' 可用'
    finally:
        s.close()
        return info
 
executor = ThreadPoolExecutor(max_workers=10)
with open('server.txt','r') as fin, open('connection.txt','w') as fout:
    servers = []
    for addr in fin:
        ip, port = addr.split(':')
        port = int(port)
        servers.append((ip, port))
    for result in executor.map(try_connection, servers):
        print(result)
        fout.write(result + '\n')

第三步、验证结果输出

以上内容就可以帮助我们验证了,但是需要注意的是虽然有些地址显示可用,但是速度不敢恭维,大家可以继续探索可以只将优质的IP地址,即链接速度大于某一定值的才显示为可用。希望本章内容可以帮助大家学习~

挂件 关闭
客服
二维码
客服二维码

加微信 领流量

大客户经理二维码

售前咨询,企业定制

专属客服竭诚为您服务