4

2021年最佳Python HTTP客户端

 2 years ago
source link: https://www.jdon.com/56733
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
2021年最佳Python HTTP客户端

在本文中,我们将介绍目前可用于 Python 的五个最佳 HTTP 客户端,并详细说明为什么每个客户端都适合您。

  1. urllib/urllib3
  2. Requests
  3. Grequests
  4. AIOHTTP
  5. HTTPX

就单个请求的纯性能而言,urllib3 是赢家——POST 花费的时间比其他库少得多。我们 GET 请求的时间差异相当小,所有 5 个库之间只有 27 毫秒。有趣的是,虽然 urllib3 的 Github 星数可能较少(有时被视为受欢迎程度的标志),但它实际上下载的次数最多(还记得我说过它是请求的依赖项吗?)。Requests 显然是拥有最多社区的库,并提供了大量我们没有在这些简单测试中进行基准测试的高级功能。

异步客户端方面,AIOHTTP 名列前茅,每个请求的 GET 和 POST 时间最少。它还拥有最多的下载量和星级,但请记住,这很可能是因为它也提供了 Web 框架行为。由于 GRequests 项目缺乏活动并且它有自己的建议,除非您有非常具体的需求,否则您可能不应该考虑它。

Requests 激发了许多所示库的设计。它在 Python 社区中非常受欢迎,是大多数开发人员的默认选择。通过它提供的附加功能,如会话和简单的重试行为,如果您有简单的需求或想要维护简单的代码,您可能应该查看它。

对于那些需求比较复杂,想要做更多请求的开发者来说,AIOHTTP 是目前最好的选择。在我们所有的测试中,它异步执行得最好,它的下载量/星数最多,目前提供稳定版本。然而,它很复杂,没有开箱即用的重试支持,因此当 v1 版本可用或处于测试阶段时,可能值得关注 HTTPX。

详细点击标题


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK