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 bytearray()函数 bytearray是 Python 中的一个内置类,用于表示二进制数据。与 bytes 类似,bytearray也是不可变的序列,但是它可以通过索引来修改其中的元素,因此可以用于一些需要修改二进制数据的场合。
使用Python爬取网页上的所有链接 要使用Python爬取网页上的所有链接,可以使用Python的requests库和BeautifulSoup库。
C语言strcat()函数:追加字符串到另一个字符串尾部 strcat()是C语言标准库中的一个字符串函数,用于将一个字符串追加到另一个字符串的末尾;
Updating crates.io index 出现错误解决方法 在向Rust项目添加依赖后尝试运行或编译,cargo管理工具会尝试更新crates.io index,当出现git配置错误可能会出现类似以下的错误:
Golang实现字符串的MD5加密 本文将使用 golang 自带的 crypto/md5 库实现MD5的字符串加密;
Rust toml::Table详细用法 在Rust中,toml::Table是一个代表TOML表(table)的结构体,可以使用它来访问和操作TOML格式的数据。toml::Table结构体可以看作是一个HashMap,它将TOML表的键和值映射到一个哈希表中。TOML表是TOML格式数据的核心,它表示一组键值对,其中每个键都是一个字符串,对应一个值。