python requests 库请求带有文件参数的接口实例

yipeiwu_com6年前Python基础

有些接口参数是一个文件格式,比如fiddler 抓包参数如下显示

python requests 库请求带有文件参数的接口

这个接口的 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 库请求带有文件参数的接口实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

春节到了 教你使用python来抢票回家

这篇文章主要介绍了春节到了 教你使用python来抢票回家,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 不知不觉,一年一度的春运抢票...

python正则表达式面试题解答

三道python正则表达式面试题,具体如下 1.去除以下html文件中的标签,只显示文本信息。 <div> <p>岗位职责:</p> <p&...

python比较两个列表是否相等的方法

本文实例讲述了python比较两个列表是否相等的方法。分享给大家供大家参考。具体如下: 这里演示了 == 和 is两种方法的区别: L1 = [1, ('a', 3)] # same...

Selenium 模拟浏览器动态加载页面的实现方法

相信爬取大公司的数据时,常常会遇到页面信息动态加载的问题, 如果仅仅使用content = urllib2.urlopen(URL).read(),估计信息是获取不全的,这时候就需要模拟...

Linux下升级安装python3.8并配置pip及yum的教程

Linux下升级安装python3.8并配置pip及yum的教程

服务器的CentOS 7中自带的python版本是python-2.7.5,需要再安装一个 python-3.8.1 一、查看版本 安装前查看一下是否已经安装过python,我...