python - 请求工具带上传一个巨大的文件

标签 python django python-requests bottle

我正在尝试使用请求工具带上传一个巨大的文件。该文件是使用 Python Bottle 框架从 HTML 表单中收集的

uploadfile = request.files.get('File Upload')

payload = MultipartEncoder({uploadfile.filename:uploadfile.file.read()})

r = requests.post(url,
                files=payload,auth=(username,password))

错误

TypeError: 'MultipartEncoder' object is not iterable

问题: 1、如何发送采集到的文件对象?

最佳答案

当使用 MultipartEncoder 时,我将信息作为 post data 属性发送,如他们的示例所示:

https://pypi.python.org/pypi/requests-toolbelt/0.3.0

这是我将使用的示例脚本:

from requests_toolbelt import MultipartEncoder
import requests

uploadfile = open("./example_upload.dat", "r")
payload = MultipartEncoder({uploadfile.name: uploadfile})

r = requests.post(
    "http://example.com",
    data=payload,
    auth=("exampleuser","examplepassword"),
    headers={"Content-Type": payload.content_type})

关于python - 请求工具带上传一个巨大的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28589782/

相关文章:

python - 用 Celery 取消已经执行的任务?

python - HTTP requests.post 超时

Python - 创建一个类并使用函数更改它的对象值

python - 异步。动态添加协程到循环

python - 获取部分IMAP文本部分

.net - 铁蟒,美汤,win32 app

Django 管理员 : Prefill data when clicking the add-another button next to a ForeignKey dropdown

python - Django ModelForm显示外键的模型字段而不是对象ID

Python Mechanize 连接失败问题

python - 有没有办法在发送前检查完整的帖子请求 header 和正文?