使用请求上传文件并发送额外数据

Den*_*hie 11 python python-2.7 python-requests

我正在尝试使用请求上传文件.我需要上传一个PDF文件,同时将一些其他数据发送到表单,如作者姓名.

我试过这个:

requests.get(url, files = {"file":open("file.txt"), "author" : "me" })
Run Code Online (Sandbox Code Playgroud)

但它不会将数据发送到表单.

Bur*_*lid 17

所以我知道您要上传到URL,pdf文件以及一些额外的参数.

您遇到的第一个错误是您正在使用.get()而不是.post().

我正在使用文档中的示例,您应该通过这些示例.这应该让你开始:

>>> url = 'http://httpbin.org/post'
>>> files = {'file': open('somefile.pdf', 'rb')}
>>> values = {'author': 'John Smith'}
>>> r = requests.post(url, files=files, data=values)
Run Code Online (Sandbox Code Playgroud)