我试图用python请求上传我的大文件(大约1 gb),但它没有流 - 将其加载到内存。
with open('file.rar','rb') as ff:
upload = requests.post(host,files={"file": ff})
正如文件所述,我试过:
with open('file.rar','rb') as ff:
upload = requests.post(host,data=ff)
及其工作,但我需要修改其他POST字段。如何在python-requests中执行此操作?
答案 0 :(得分:1)
根据请求包的文档 http://docs.python-requests.org/en/latest/user/quickstart/#more-complicated-post-requests
在下面的部分内容中,您需要files =和一些python dict包装器。不确定这是不是你想要的。但是这个模式允许你通过将它们放在传递给数据参数的dict中来修改其他字段。
>>> url = 'http://httpbin.org/post'
>>> files = {'file': open('report.xls', 'rb')}
>>> r = requests.post(url, files=files)
>>> r.text
{
...
"files": {
"file": "<censored...binary...data>"
,
...
}