Python 请求返回无法解析([Errno 11001] getaddrinfo 失败)

问题描述 投票:0回答:1

我下载了 requests 库,并遵循其文档中的快速入门示例:https://requests.readthedocs.io/en/latest/user/quickstart/#make-a-request,却遇到以下错误。

我尝试将 URL 替换为“https://www.google.com”,也得到了相同的错误。

值得注意的是,我使用的是代理。

>>> import requests 
>>> >>> r = requests.get('https://api.github.com/events')
Traceback (most recent call last):
  File "C:\User\venv\lib\site-packages\urllib3\connection.py", line 203, in _new_conn
    sock = connection.create_connection(
  File "C:\User\venv\lib\site-packages\urllib3\util\connection.py", line 60, in create_connection
    for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
  File "C:\Program Files\Python39\lib\socket.py", line 954, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno 11001] getaddrinfo failed
python python-requests
1个回答
0
投票

问题的出现是因为我使用了代理。

要解决单个请求的此问题,只需添加代理参数即可。

import requests

proxies = {
  'http': 'http://10.10.1.10:3128',
  'https': 'http://10.10.1.10:1080',
}

requests.get('http://example.org', proxies=proxies)

或者,为会话配置代理或设置所需的环境代理环境变量。

文档中有关代理的更多信息:https://requests.readthedocs.io/en/latest/user/advanced/#proxies

© www.soinside.com 2019 - 2024. All rights reserved.