关于python:Python-代码使用代理服务器访问网络遇到连接无法建立的错误

102次阅读

共计 1998 个字符,预计需要花费 5 分钟才能阅读完成。

在面对应用 Python 的 requests 库通过代理拜访 URL 时遇到的谬误,如 Error accessing https://cloud.tencent.com/developer/article/2388638 through proxy: HTTPSConnectionPool(host='cloud.tencent.com', port=443): Max retries exceeded with url: /developer/article/2388638 (Caused by ProxyError('Unable to connect to proxy', NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x0000027520A40880>: Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it'))), 咱们能够通过一系列的诊断和解决步骤来尝试修复这一问题。这个谬误表明尝试通过指定的代理服务器连贯到指标 URL 时,连贯被代理服务器回绝了。

诊断问题

错误信息表明代理服务器回绝了连贯申请。这可能是因为多种起因造成的,包含但不限于代理服务器配置谬误、网络问题、或者代理服务器软件自身的问题。要无效解决这个问题,须要从根底做起,逐渐排查可能的起因。

1. 查看代理服务器配置

确保代理服务器的地址、端口和认证信息(如果需要的话)是正确的。如果你在代码中硬编码了代理服务器的配置,应该从新查看这些配置信息是否正确无误。如果应用的是环境变量来配置代理,同样须要确保这些环境变量设置正确。

2. 验证网络连接

确保你的机器能够拜访代理服务器。能够应用 ping 或者 telnet 命令来测试代理服务器的地址和端口是否可达。例如,如果代理服务器的地址是 proxy.example.com,端口是 8080,你能够在命令行中运行 telnet proxy.example.com 8080 来查看连贯是否胜利。

3. 查看代理服务器软件

如果你有权限拜访代理服务器,查看代理服务器软件的运行状态。确保代理服务曾经启动并且运行失常。如果代理服务器软件有日志性能,查看日志可能会提供连贯失败的具体起因。

解决步骤

更新 requests 和 urllib3 库

确保你应用的 requests 库和 urllib3 库是最新版本。旧版本的库可能存在已知的 bugs 或者不兼容的问题。能够应用 pip 来更新这些库:

pip install requests --upgrade
pip install urllib3 --upgrade

应用正确的代理配置格局

在 requests 中应用代理,须要以正确的格局指定代理信息。以下是一个示例:

proxies = {
    'http': 'http://your_proxy_address:proxy_port',
    'https': 'https://your_proxy_address:proxy_port',
}

response = requests.get('https://cloud.tencent.com/developer/article/2388638', proxies=proxies)

确保替换 your_proxy_addressproxy_port 为你的代理服务器的理论地址和端口。

思考绕过代理

如果你的指标是拜访公开的互联网资源,而你的网络环境容许间接拜访(不通过代理服务器),能够尝试临时移除代理配置来验证问题是否的确与代理相干。

应用高级代理配置

requests 库容许进行更为具体的代理配置,包含应用 SOCKS 代理等。如果你的场景须要这些高级性能,能够思考应用 requests[socks] 这个额定的依赖项来反对 SOCKS 代理:

pip install requests[socks]

而后在代码中配置 SOCKS 代理,例如:

proxies = {
    'http': 'socks5://your_proxy_address:proxy_port',
    'https': 'socks5://your_proxy_address:proxy_port',
}

response = requests.get('https://cloud.tencent.com/developer/article/2388638', proxies=

proxies)

结语

解决通过代理拜访 URL 时遇到的连贯问题,须要系统地检查和排除各种可能的起因。从查看根本的代理服务器配置开始,到确保网络连接的有效性,再到应用最新版本的依赖库,每一步都是确保可能顺利通过代理服务器拜访内部资源的要害。在这个过程中,急躁和粗疏是解决问题的重要因素。心愿以上提供的办法可能帮忙你解决遇到的问题。

正文完
 0