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中使用strip()方法删除字符串中空格的教程

 strip()方法返回所有字符从开始及字符串的末尾(默认空格字符)被去除后的字符串的一个副本。 语法 以下是strip()方法的语法: str.strip([chars]...

Django uwsgi Nginx 的生产环境部署详解

配置生产环境 #setting.py 文件中 DEBUG = False # 生产环境 # 允许访问的域名,域名前加一个点表示允许访问该域名下的子域名,比如 www.zmre...

python3利用Dlib19.7实现人脸68个特征点标定

python3利用Dlib19.7实现人脸68个特征点标定

0.引言 利用Dlib官方训练好的模型“shape_predictor_68_face_landmarks.dat”进行68点标定,利用OpenCv进行图像化处理,在人脸上画出68个点,...

python类继承用法实例分析

本文实例讲述了python类继承用法。分享给大家供大家参考。具体方法如下: #!/usr/bin/python # Filename: inherit.py class Schoo...

探索Python3.4中新引入的asyncio模块

使用 Simple Protocol asyncio.BaseProtocol 类是asyncio模块中协议接口(protocol interface)的一个常见的基类。asyncio....