request.request:
参数:
- method: 提交方式:‘POST‘、‘GET‘、‘PUSH‘等等
- url: 提交地址
- params: 在URL中传递的参数,主要用于GET方式提交 ,例如:
requests.request(
method=‘GET‘,
url= ‘http://www.baidu.com‘,
params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘}
)
提交后如下方式提交到后台:
http://www.baidu.com?k1=v1&k2=v2
- data: 在请求体里传递的数据,主要用于非‘GET‘方式提交,如:
requests.request(
method=‘POST‘,
url= ‘http://www.baidu.com‘,
params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘},
#方式一:
data = {‘user‘:‘songtao‘,‘pwd‘: ‘123‘}
#方式二:
data = "user = songtao&pwd=123"
#注:即使用方式一,在往后台提交的时候系统也会自动转换成方式二的形式传递.
)
请求头:
content-type: application/url-form-encod.....
请求体:
use=alex&pwd=123
- json 在请求体里传递的数据,主要用于GET方式提交,与data参数区别在于如果数据中存在字典中嵌套字典时用json传递,并且两者请求头和请求题不同如:
requests.request(
method=‘POST‘,
url= ‘http://www.oldboyedu.com‘,
params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘},
json = {‘use‘:‘songtao‘,‘pwd‘: ‘123‘,‘hobby‘:{‘name‘:‘girls‘}}
)
请求头:
content-type: application/json
请求体:
"{‘use‘:‘alex‘,‘pwd‘: ‘123‘}"
- headers 请求头
requests.request(
method=‘POST‘,
url= ‘http://www.baidu.com‘,
params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘},
json = {‘use‘:‘songtao‘,‘pwd‘: ‘123‘},
headers={
‘Referer‘: ‘http://dig.chouti.com/‘,
‘User-Agent‘: "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36"
}
)
- cookies Cookies
- files 上传文件
- auth 基本认证(headers中加入加密的用户名和密码)
- timeout 请求和响应的超市时间
- allow_redirects 是否允许重定向
- proxies 代理
- verify 是否忽略证书
- cert 证书文件
- stream 流
原文地址:https://www.cnblogs.com/songtao1600/p/9092875.html