有些接口参数是一个文件格式,比如fiddler 抓包参数如下显示
这个接口的 form-data fiddler 显示的和不带文件参数的接口有明显区别,显示的不是简单的键值对,所以我们也不能只通过 data给接口传参,需要再value为<file>的参数通过 files传参
data = { "CSRFName": “CSRFName”, "CSRFToken": “CSRFToken”, "importType": "XML", "hit_criteria": "name", "action_on_duplicated_name": "generate_new", "useRecursion": "0", "bIntoProject": "0", "containerID": "4956", "MAX_FILE_SIZE": "409600", "UploadFile": "上传文件" } files = {"uploadedFile": open(file_name, "rb")} r = session.post(url=url, data=data, files=files)
这样我们通过requests 再次请求接口,通过fiddler 抓包,验证一下requests的请求是不是和原始的请求一致。
fiddler 显示的form data和原始请求一致,说明我们请求参数是正确的。
以上这篇python requests 库请求带有文件参数的接口实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。