首页 > 解决方案 > 结合 Python 请求 - 文件和整数

问题描述

我正在尝试请求表单数据类型。该请求以前仅在两个文件用于该请求时有效。但是,现在还必须在请求中输入 ID,并且它不起作用。

我已经尝试了许多不同的选项来尝试使其工作,ID 是单独文件中的输入,与“file_a”和“file_b”相同。但是,ID 表单数据字段出错。

url = url
headers = {"Authorization": Access_token}
files = [('file_a', open(file_a, 'rb')), ('file_b', open(file_b, 'rb')), ('ID', ID)]
response = requests.post(url=url, files=files, headers=headers)
print(response.content)

我期待一个响应 json 字符串,但是由于 ID 整数字段导致请求无法正常工作,因此没有得到响应。

标签: pythonpython-requests

解决方案


从您的代码示例中, ID似乎是一个文件,但您可能希望将其作为表单编码数据传递datarequests.post.

为此,请创建一个包含字段名称及其值的字典:

url = url

headers = {"Authorization": Access_token}

files = [('file_a', open(file_a, 'rb')), ('file_b', open(file_b, 'rb'))]

data = {'ID', ID}  # here's ID value

response = requests.post(url=url, files=files, headers=headers)

print('status code:', response.status_code)

在这里您可以找到发送表单数据所需的文档。

请让我知道这是否对您有帮助,或者您是否需要进一步的帮助。


推荐阅读