相关疑难解决方法(0)

使用请求在python中下载大文件

请求是一个非常好的库.我想用它来下载大文件(> 1GB).问题是不可能将整个文件保存在内存中我需要以块的形式读取它.这是以下代码的问题

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 
Run Code Online (Sandbox Code Playgroud)

由于某种原因它不起作用.在将其保存到文件之前,它仍会将响应加载到内存中.

UPDATE

如果你需要一个可以从FTP下载大文件的小客户端(Python 2.x /3.x),你可以在这里找到它.它支持多线程和重新连接(它确实监视连接),它还为下载任务调整套接字参数.

python download stream python-requests

348
推荐指数
6
解决办法
27万
查看次数

使用Python从Box下载文件

我正在尝试使用 Python 将 Excel 文件从 Box 下载到本地驱动器。

使用 boxsdk,我能够通过 OAuth2 进行身份验证并成功获取 Box 上的文件 ID。

然而,当我使用该client.file(file_id).content()函数时,它只返回一个字符串,如果我使用client.file(file_id).get()它,它只会给我一个boxsdk.object.file.File.

有人知道如何将其中任何一个写入本地计算机上的 Excel 文件吗?或者使用 Python 从 Box 下载 excel 文件的更好方法。

(我发现这里boxsdk.object.file.File有一个选项,但我不知道如何使用它来创建 Excel 文件,而且我的搜索没有帮助)。download_to(writeable_stream

python excel download box

5
推荐指数
1
解决办法
4724
查看次数

标签 统计

download ×2

python ×2

box ×1

excel ×1

python-requests ×1

stream ×1