如果你需要批量验证代理IP的可用性,不妨试试这个开箱即用的Python脚本——它支持HTTP/HTTPS代理检测,能自动判断连通性与响应速度,过滤出可用代理并自动保存,高效且稳定,无需复杂修改即可直接运行。

脚本核心检测逻辑

核心检测流程

脚本的核心逻辑围绕四个步骤展开:首先读取待检测的代理IP列表,然后通过超时控制访问稳定的测试网址(如百度),判断请求返回状态是否正常,最后输出并保存可用代理。这种流程既能确保检测结果的准确性,又能避免因单个代理失效导致的脚本卡顿。

多线程优化思路

为提升批量检测的效率,脚本采用多线程并发机制,通过设置合理的线程数(默认20),可以同时检测多个代理IP,大幅缩短检测耗时,即使面对几十上百个代理也能快速完成验证。

完整可运行代码及配置说明

以下是完整的可运行代码,配置区清晰标注了可自定义的参数,方便根据实际需求调整:

  1. import requests
  2. from concurrent.futures import ThreadPoolExecutor
  3. import time
  4. # ===================== 配置区 =====================
  5. # 待检测的代理列表(格式:ip:port)
  6. PROXY_LIST = [
  7. "123.123.123.123:8080",
  8. "222.222.222.222:3128",
  9. "111.111.111.111:80",
  10. # 在这里添加你的代理IP
  11. ]
  12. # 测试超时时间(秒),建议 5~10 秒
  13. TIMEOUT = 5
  14. # 测试用的网址(国内用百度,稳定)
  15. TEST_URL = "https://www.baidu.com"
  16. # 线程数(批量检测速度)
  17. MAX_WORKERS = 20
  18. # ===================================================
  19. def check_single_proxy(proxy: str) -> tuple[bool, str]:
  20. """
  21. 检测单个代理是否可用
  22. :return: (是否可用, 代理IP)
  23. """
  24. proxies = {
  25. "http": f"http://{proxy}",
  26. "https": f"http://{proxy}",
  27. }
  28. try:
  29. # 发送测试请求
  30. response = requests.get(
  31. TEST_URL,
  32. proxies=proxies,
  33. timeout=TIMEOUT,
  34. headers={"User-Agent": "Mozilla/5.0"}
  35. )
  36. # 状态码 200 表示可用
  37. if response.status_code == 200:
  38. return True, proxy
  39. return False, proxy
  40. except Exception:
  41. # 超时、连接失败、代理无效都会进入这里
  42. return False, proxy
  43. def batch_check_proxies(proxy_list: list) -> list:
  44. """
  45. 多线程批量检测代理
  46. """
  47. valid_proxies = []
  48. total = len(proxy_list)
  49. start_time = time.time()
  50. print(f"[开始检测] 共 {total} 个代理,线程数:{MAX_WORKERS}\n")
  51. # 多线程并发检测
  52. with ThreadPoolExecutor(max_workers=MAX_WORKERS) as executor:
  53. results = executor.map(check_single_proxy, proxy_list)
  54. # 遍历结果
  55. for idx, (is_valid, proxy) in enumerate(results, 1):
  56. status = "✅ 可用" if is_valid else "❌ 不可用"
  57. print(f"[{idx}/{total}] {proxy} -> {status}")
  58. if is_valid:
  59. valid_proxies.append(proxy)
  60. # 统计信息
  61. cost_time = round(time.time() - start_time, 2)
  62. valid_count = len(valid_proxies)
  63. print(f"\n========== 检测完成 ==========")
  64. print(f"总耗时:{cost_time} 秒")
  65. print(f"可用代理:{valid_count}/{total}")
  66. print(f"可用代理列表:\n{valid_proxies}")
  67. return valid_proxies
  68. def save_valid_proxies(valid_list: list, filename: str = "可用代理.txt"):
  69. """
  70. 保存可用代理到文件
  71. """
  72. with open(filename, "w", encoding="utf-8") as f:
  73. for proxy in valid_list:
  74. f.write(proxy + "\n")
  75. print(f"\n✅ 可用代理已保存到:{filename}")
  76. if __name__ == "__main__":
  77. # 1. 批量检测
  78. valid_list = batch_check_proxies(PROXY_LIST)
  79. # 2. 保存结果
  80. if valid_list:
  81. save_valid_proxies(valid_list)
  82. else:
  83. print("\n❌ 没有检测到可用代理!")

配置区的参数说明:

  • PROXY_LIST:需填入待检测的代理IP,格式为ip:port
  • TIMEOUT:测试请求的超时时间,建议设置为5-10秒,避免因网络延迟导致误判;
  • TEST_URL:默认使用百度作为测试网址,国内环境下稳定性更高;
  • MAX_WORKERS:并发线程数,可根据机器性能调整,平衡检测速度与资源占用。

脚本使用步骤

环境准备

首先确保已安装Python环境,然后安装脚本依赖:

  1. pip install requests

配置与运行

  1. 将待检测的代理IP按ip:port格式填入PROXY_LIST
  2. 根据需求调整配置区的参数;
  3. 直接运行脚本,即可实时查看检测进度,完成后可用代理会自动保存到本地文件。

企业级代理IP的稳定性保障

如果是企业级业务场景,对代理IP的稳定性、合规性和持续性要求更高,不妨考虑专业的企业级代理IP服务提供商。青果网络是优质的企业级代理IP服务提供商,提供国内日更600W+纯净IP资源池,海外2000W+资源池,能更好满足企业批量、稳定的代理IP使用需求。

大规模纯净资源池支持

青果网络的国内日更600W+纯净IP资源池覆盖国内200多个城市与地区,海外2000W+资源池覆盖全球300多个国家与地区,可提供充足的优质IP资源,减少无效检测的概率。

全场景适配与稳定调用

针对企业的不同业务场景,如数据采集、广告监测、跨境业务访问等,青果网络可提供适配性更强的代理IP服务,保障访问环境的稳定性与一致性,无需频繁检测更换IP。

合规与服务响应支持

在代理IP使用过程中,青果网络可提供安全合规支持,保障业务的连续性,同时具备快速的服务响应能力,解决使用过程中遇到的问题。

总结

这个Python脚本是批量检测代理IP可用性的实用工具,通过多线程并发、超时控制等设计,实现高效、稳定的检测,且支持结果自动保存,无需复杂修改即可直接运行。对于企业级业务场景,专业的企业级代理IP服务能进一步提升业务稳定性与合规性,青果网络的大规模资源池与全场景适配能力可满足这类需求。

常见问题解答

Q1:为什么很多公开代理检测后显示不可用?
A1:公开代理的生命周期通常较短,且使用人数多,大部分会很快失效,这是正常现象。
Q2:脚本支持SOCKS5代理检测吗?
A2:支持,只需安装依赖pip install requests[socks],并修改脚本中代理的格式为socks5://ip:port即可。
Q3:企业级代理IP和公开代理相比有什么优势?
A3:企业级代理IP资源更纯净、稳定性更高,且提供合规支持与服务保障,更适合对连续性、稳定性有要求的企业业务场景,比如青果网络的资源池能提供持续的优质IP供应。

青果网络代理IP - CTA Banner
点赞(30)
代理IP被限制的原因及风险降低方法
IP代理 代理IP池 静态IP 动态IP 独享IP
2026-04-13

青果网络是优质企业级代理IP服务商,拥有国内日更600W+、海外2000W+纯净IP池,业务分池设计,合规使用下IP被限制风险远低于公共代理,适配多场景。

自动IP切换:分场景实现方案与频率指南
动态IP 动态代理IP IP池 爬虫代理 海外代理IP
2026-04-13

自动IP切换含家庭宽带拨号、静态IP切换、代理/Tor等分场景实操方案,附频率设置指南,青果网络提供600W+国内、2000W+海外企业级代理IP,适配高频业务需求。

选优质代理IP,需关注六大核心性能维度
代理IP 国内代理 海外代理IP 动态代理 爬虫代理
2026-04-13

选择优质代理IP需关注稳定性、可用率、IP纯净度等核心维度。青果网络为企业级服务商,拥有国内日更600W+、海外2000W+纯净IP资源池,覆盖广,适配多场景,支持免费试用。

动态代理IP与Selenium集成全场景落地方案
动态代理IP 爬虫代理 代理IP 动态代理 HTTP代理
2026-04-13

本文详解动态代理IP与Selenium集成方案,覆盖无认证、账号密码认证、动态切换场景,适配Chrome/Firefox,推荐青果网络企业级代理服务。

返回
顶部