下载大文件 python 有要求
https://requests.readthedocs.io/
- 这真的是一个很好的图书馆。 我想用它来下载大文件。 />1 GB./.
问题是,不可能在内存中保存整个文件,我需要在零件中读取它。 这是以下代码的问题。
出于某种原因,这不起作用。 在将其保存到文件之前,他仍然加载对内存的响应。
UPDATE
如果您需要一个小客户 /Python 2.x /3.x/, 哪个可以从中载大文件 FTP, 你可以找到它
https://github.com/keepitsimple/pyFTPclient
. 它支持多线程 & 参考 /它监控连接/, 并为下载任务配置套接字参数。
- 这真的是一个很好的图书馆。 我想用它来下载大文件。 />1 GB./.
问题是,不可能在内存中保存整个文件,我需要在零件中读取它。 这是以下代码的问题。
import requests
def DownloadFile/url/
local_filename = url.split/'/'/[-1]
r = requests.get/url/
f = open/local_filename, 'wb'/
for chunk in r.iter_content/chunk_size=512 * 1024/:
if chunk: # filter out keep-alive new chunks
f.write/chunk/
f.close//
return
出于某种原因,这不起作用。 在将其保存到文件之前,他仍然加载对内存的响应。
UPDATE
如果您需要一个小客户 /Python 2.x /3.x/, 哪个可以从中载大文件 FTP, 你可以找到它
https://github.com/keepitsimple/pyFTPclient
. 它支持多线程 & 参考 /它监控连接/, 并为下载任务配置套接字参数。
没有找到相关结果
已邀请:
5 个回复
三叔
赞同来自:
请注意,返回的字节数
, 不太平等
; 预计这是一种随机数,通常往往是更多,并且预计每次迭代都会有所不同。
看
https://requests.readthedocs.i ... kflow
和
https://requests.readthedocs.i ... ntent
未来使用。
窦买办
赞同来自:
https://requests.readthedocs.i ... e.raw
和
https://docs.python.org/3/libr ... leobj
:
在这种情况下,该文件被发送到磁盘而不使用冗余内存,并且代码很简单。
郭文康
赞同来自:
:
否则,如果要将其保存到临时文件:
我看了这个过程。:
我看到文件的增长,但使用内存仍然存在于级别 17 MB. 我错过了什么?
小明明
赞同来自:
清洁语法/
顺便问一下,你如何确定答案被加载到内存中的内容?
听起来好像 python 不会将数据重置为来自其他文件的文件
https://coderoad.ru/7127075/
SO 你可以试试
和
, 强行录制文件并释放;
知食
赞同来自:
包括机制 "download as" 和 "retries":