Python请求库在Windows上非常慢

时间:2019-12-27 21:15:16

标签: python python-requests

此问题在Windows 10上发生(我知道这一点,因为它在Mac OS上不存在)。

每当您对以下端点之一进行简单请求时,在Windows上它的运行速度都会非常慢,而在Mac OS上几乎是即时的。

import requests
requests.get('/user/get/' + str(current_user.id))

在Windows上大约需要3秒钟,而在Mac OS上则几乎是瞬时的。

通过使用一些简单的日志记录,我发现 urllib3 (这是请求的基础库)在建立新的http连接时会花费很长时间。这是目前的痛点,我不了解如何解决。

DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): localhost:5004

修复失败1:

我从this answer尝试了以下操作,但不起作用。

import requests

session = requests.Session()
session.trust_env = False

r = session.get('/user/get/' + str(current_user.id))

我也从相同的答案中尝试了以下方法,但这不起作用。

os.environ['NO_PROXY'] = 'localhost'

修复失败2:

我尝试了第二次supposed fix,但也没有成功。

import requests

proxies = {
  "http": None,
  "https": None,
}

r = requests.get('/user/get/' + str(current_user.id), proxies=proxies)

现在。

这使我没有答案,也没有可用的修复程序。有人知道为什么这是个问题吗?

1 个答案:

答案 0 :(得分:0)

我发现这是来自this github issue的DNS问题。如答案中所指定,您必须将localhost更改为127.0.0.1,这不是请求问题。