我正在使用 Python 请求包上传一个大文件,但我找不到任何方法来返回有关上传进度的数据。我见过许多用于下载文件的进度表,但这些不适用于文件上传。
理想的解决方案是某种回调方法,例如:
def progress(percent):
print percent
r = requests.post(URL, files={'f':hugeFileHandle}, callback=progress)
在此先感谢您的帮助 :)
原文由 Robin Begbie 发布,翻译遵循 CC BY-SA 4.0 许可协议
requests
不支持 上传 流 例如:顺便说一句,如果您不需要报告进度; 您可以使用内存映射文件上传大文件。
要解决它,您可以创建一个类似于 urllib2 POST progress monitoring 的文件适配器:
例子