我使用 python 来简单地调用 api.github.gist。我首先尝试了 urllib2,这花了我大约 10 秒!。请求不到 1 秒
我在合作网络下,使用代理。这两个库在代理下有不同的默认行为吗?
而且我用fiddler查网络。在这两种情况下,http 请求都在大约 40 毫秒内完成。那么 urllib 把时间花在了哪里呢?
最佳答案
很可能是 DNS 缓存加速了请求
。 DNS 查询在公司网络中可能会花费很多时间,不知道为什么,但我也有同样的经历。第一次使用 urllib2
发送请求时,DNS 查询、速度慢且缓存。第二次使用 requests
发送请求时,不需要查询 DNS,只需从缓存中检索即可。
清理DNS缓存,改变顺序,即先用requests
请求,看看有没有区别。
关于python - urllib2 是否比 python3 中的请求慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35146733/