通过 HTTP 请求检测
https://www.baidu.com
)发送 HTTP 请求。Python 代理为例:
import requests
proxy = {
"http": "http://your_proxy_ip:port",
"https": "http://your_proxy_ip:port"
}
try:
response = requests.get("https://www.baidu.com", proxies=proxy, timeout=5)
if response.status_code == 200:
print("代理成功")
else:
print("代理失败:", response.status_code)
except Exception as e:
print("代理异常:", e)
curl proxyIp:proxyPort https://cip.cc/
curl --socks5 proxyIp:proxyPort https://cip.cc/
curl -x http://proxyIp:proxyPort -o /dev/null -s -w "Time: %{time_total}\n" https://www.baidu.com
4. 批量检测技巧
使用多线程检测
import concurrent.futures
import requests
proxies = ["http://ip1:port", "http://ip2:port", "http://ip3:port"]
def check_proxy(proxy):
try:
response = requests.get("https://www.baidu.com", proxies={"http": proxy, "https": proxy}, timeout=5)
return proxy, response.status_code == 200
except:
return proxy, False
with concurrent.futures.ThreadPoolExecutor() as executor:
results = executor.map(check_proxy, proxies)
for proxy, is_working in results:
print(f"{proxy} is {'working' if is_working else 'not working'}")