首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有Python标准库的requests.get(,stream=True)

带有Python标准库的requests.get(,stream=True)
EN

Stack Overflow用户
提问于 2021-05-08 02:33:49
回答 1查看 322关注 0票数 2

根据ps auximport requests似乎为我正在尝试优化的代码增加了大约4MB的内存。

requests在相应代码中的用法非常基础,我读到“常规”requests.get可以通过标准库实现:

代码语言:javascript
复制
from urllib.request import urlopen

urlopen("www.bla.com").read()

然而,有一种情况是使用了verify=True, stream=True

这也可以通过Python (3.8)标准库合理地实现吗?

EN

回答 1

Stack Overflow用户

发布于 2021-05-15 08:01:52

如果您正在为linux目标进行开发,那么也可能调用curl二进制文件。我曾经参与过一个项目,在这个项目中我们使用了python库,但最终调用了linux工具,这是一个经过编译的C二进制文件,因此它的性能明显高于任何python代码。我不能说出curl的确切内存需求,但它可能是一个选择。它是一个非常复杂的工具,能够轻松地执行大量的REST请求。

获取下载网站的示例:

代码语言:javascript
复制
curl -o savedpage.html http://www.example.com/

您可以在python中运行它,如下所示:

代码语言:javascript
复制
import subprocess
out = subprocess.check_output(["curl", "https://www.python.org/"])
print(out)

这可能是一种选择,但值得综合考虑,因为curl可能没有预先安装在目标计算机上。您也可以将curl二进制文件与您的代码一起提供,但这要求目标不变,因为您必须预编译该二进制文件。

因此,这不是最直接的解决方案,另一方面,它可能是一个简单的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67440099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档