码迷,mamicode.com
首页 > 编程语言 > 详细

python中Requests的不同请求方法时的参数请求方式

时间:2021-04-24 11:56:41      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:消息   art   header   org   coder   post请求   mic   value   pos   

最常用的get、post方法

技术图片

1.get请求方法---带请求参数:

import requests
 
‘‘‘
URL Parameters 请求方式: URL参数
例如: 以get 方式请求http://httpbin.org/get?first_name=hello&last_name=word
 
‘‘‘
# params={"first_name":"hello","last_name":"word"}
# responds=requests.get("http://httpbin.org/get",params=params)
# print(responds.text)
# print(responds.url) 

HTTP 协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式,常见的四种编码方式查看下面这篇博客:

https://www.cnblogs.com/hls-code/p/14684923.html

2.post请求方法--表单参数数据请求:

reqeusts支持以form表单形式发送post请求,只需要将请求的参数构造成一个字典,然后传给requests.post()的data参数即可

‘‘‘
表单参数提交,注意只更新的是表单数据
Content-Type: application/x-www-form-urlencoded
例如: 以post 方式请求http://httpbin.org/post, 增加的资源为params={"first_name":"hello","last_name":"word"}
‘‘‘
params={"first_name":"hello","last_name":"word"}
headers={"Content-Tpye":"application/x-www-form-urlencoded"}
responds=requests.post("http://httpbin.org/post",data=params,headers=headers)
print(responds.text)
print(responds.url)
print(responds.request)

3.post请求方法--Json参数数据请求:

requests.post(url=‘‘,data=json.dumps({‘key1‘:‘value1‘,‘key2‘:‘value2‘}),headers={Content-Type:application/json})

或者:

‘‘‘
Json数据提交,更新的是数据data
Content-Type: application/json
例如: 以post 方式请求http://httpbin.org/post, 增加的资源为params={"first_name":"hello","last_name":"word"}
‘‘‘
params={"first_name":"hello","last_name":"word"}
responds=requests.post("http://httpbin.org/post",json=params,headers={"Content-Tpye":"application/json"})
print(responds.text)
print(responds.url)
print(responds.request)

4.post请求方法--请求正文是multipart/form-data

除了传统的application/x-www-form-urlencoded表单,我们另一个经常用到的是上传文件用的表单,这种表单的类型为multipart/form-data。

requests.post(url=‘‘,data={key1:value1,key2:value2},headers={Content-Type:multipart/form-data})
"""
发送文件中的数据需要(安装requests_toolbelt):
"""
from requests_toolbelt import MultipartEncoder import requests m = MultipartEncoder( fields={field0: value, field1: value, field2: (filename, open(file.py, rb), text/plain)} ) r = requests.post(http://httpbin.org/post, data=m, headers={Content-Type: m.content_type})

5.post请求方法--请求正文是binary

Requests也支持以multipart形式发送post请求,只需将一文件传给requests.post()的files参数即可

requests.post(url=‘‘,files={file:open(test.xls,rb)},headers={Content-Type:binary})

 

python中Requests的不同请求方法时的参数请求方式

标签:消息   art   header   org   coder   post请求   mic   value   pos   

原文地址:https://www.cnblogs.com/hls-code/p/14693688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!