首页 > 解决方案 > 在 Python HTTP 客户端 urllib3 和请求之间进行选择

问题描述

Python 的内置 HTTP 客户端没有很多功能,因此即使 Python 文档也推荐使用请求。但也有 urllib3,它自己使用请求,并且它们共享一些核心开发人员,让我认为它们比竞争更具互补性。

我什么时候会使用 urllib3 而不是请求?requests 在 urllib3 之上添加了哪些功能?

标签: pythonpython-requestsurllib3

解决方案


请求是在 urllib3 封装的基础上进行的。由于 Requests 已经是一个封装好的库,因此可以简化许多功能。例如:超时设置、代理设置、文件上传、获取cookies等。但是请求只能直接使用,不能异步调用,所以请求很慢。因此,如果您正在编写不需要太多速度的小型蜘蛛,请考虑使用请求。


推荐阅读