requests实现更复杂的POST

通常,你想使用requests模拟HTML中的表单内容。你只需要将一个字典传递给 data 参数;requests会将你的数据字典自动编码为表单的形式。

data = {'wd':"完美代码"}
response = requests.post('api url',data=data)

你还可以为 data 参数传入一个元组列表。在表单中多个元素使用同一 key 的时候,这种方式尤其有效:

data = (('key1', 'value1'), ('key1', 'value2'))
response = requests.post('api url',data=data)

POST JSON数据

要POST一个JSON数据,你并不需要自行编码;requests内置一个JSON编码器,你只需要将字典数据传递给json参数:

data = {'wd':"完美代码"}
response = requests.post('api url',json=data)

POST文件

使用Requests上传文件非常简单:

files = {'file': open('info.xls', 'rb')}
response = requests.post('api url',files=files)

你也可以设置文件名、文件类型和请求头:

files = {'file': ('info.xls', open('info.xls', 'rb'),
                  'application/vnd.ms-excel',
                  {'Expires': '0'}
                  )
         }
response = requests.post('api url',files=files)

你也可以将字符串作为文件来POST:

files = {'file': ('info.txt', 'hello world\n')}
response = requests.post('api url',files=files)

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/requests-post.html

分类: 计算机技术
推荐阅读:
python @staticmethod装饰器 @staticmethod 是一个装饰器,用于声明一个静态方法。静态方法是一个属于类而不是属于实例的方法,可以直接通过类名调用,而不需要创建实例。
Rust option_env宏的用法和示例 option_env宏是Rust语言中的一个标准宏,用于在编译阶段从环境变量中获取值;它将扩展成一个Option<&'static str>类型的值,如果指定的环境变量在编译时存在,值为Some(value),否则为None。
Rust assert_ne宏的用法和示例 在 Rust 中,assert_ne宏用于在测试时检查两个值是否不相等;如果它们不相等,则测试继续执行;如果它们相等,则会导致panic,并在控制台输出相关信息;
PySide6 事件详细教程 在PySide6中,事件是GUI应用程序中用户交互和其它系统事件的基本构成块;PySide6中的事件允许您捕获和处理各种类型的事件,从而实现对用户界面的交互和响应;
Windows安装Golang最新版本 首先,你需要下载Golang的最新安装包,你可以到官网去,Golang的官方网站为:golang.org,但这个网站国内用户无法访问,好在Google提供了第二个Golang下载页面:
SEO基础:TKD是什么意思? TKD其实就是HTML语言中title、keywords、description的缩写;