python - 在 Python HTTP 客户端 urllib3 和请求之间进行选择
问题描述
Python 的内置 HTTP 客户端没有很多功能,因此即使 Python 文档也推荐使用请求。但也有 urllib3,它自己使用请求,并且它们共享一些核心开发人员,让我认为它们比竞争更具互补性。
我什么时候会使用 urllib3 而不是请求?requests 在 urllib3 之上添加了哪些功能?
解决方案
请求是在 urllib3 封装的基础上进行的。由于 Requests 已经是一个封装好的库,因此可以简化许多功能。例如:超时设置、代理设置、文件上传、获取cookies等。但是请求只能直接使用,不能异步调用,所以请求很慢。因此,如果您正在编写不需要太多速度的小型蜘蛛,请考虑使用请求。
推荐阅读
- bootstrap-4 - 在 blazor webassembly 应用程序中更新到较新版本的引导程序和字体的最佳方法
- java - 如何将空列表添加到 HashMap Java 中的值
- amazon-web-services - AWS ELB 侦听器创建失败并出现验证异常
- plugins - nuxt 插件文件夹中的 Javascript - 如何在组件中使用?
- javascript - React.memo 不阻止重新渲染不接受任何道具的无状态功能子组件
- java - 从对象 ArrayList 中删除对象
- tensorflow - Keras中自动编码器(图像重建)模型的准确性
- python - jinja2.exceptions.TemplateNotFound Heroku 找不到模板
- bit-manipulation - OCaml 中的高效 8 位和 16 位计算
- python - 用户数据的视图和 HTTP 响应 - Django