一.requests.get
requests.get是调用了requests.request('get', url, params=params, **kwargs)
1.url
协议://域名?参数
如
:https://www.baidu,com/s?kw=11111
2.params
params= {传参的名称=传参的值}字典的形式
有几种情况
:
url中有参数,params也有参数
:最终结果两者的参数都生效,最终参数url中的+params中
url中有参数,params也有参数名称相同
:最终结果两者的参数都生效,且会把参数名称相同放在同一列表中
如
url ='http://httpbin.org/get?name=321'
response = requests.get(url=url,params={'name':'123'},headers=headers)
print(response.text)
'''
"args": {
"name": [
"321",
"123"
]
},
'''
推荐Python大牛在线分享技术 扣qun:855408893
领域:web开发,爬虫,数据分析,数据挖掘,人工智能
3.headers
headers = {xx:xx}字典形式传参
4.cookies
cookies= {xx:xx}字典形式传参
注意点
:headers参数中如果有cookies,再传cookies参数不生效
5.proxies
proxies = {'http':'http://端口:ip'}或者proxies = {'https':'https://端口:ip'}
后面如果是http前面必须http,https同理
6.timeout
请求时间
timeout = int
单位秒
7.allow_redirects
allow_redirects = BOOL
参数true
二.requests.post
requests.post是调用了request('post', url, data=data, json=json, **kwargs)
post请求传参和get不一样有其他都一样所有没有params
但是会有data
,json
,files
三个属性对应他三种传参方式
post三种传参方式:
- formdata:对应参数
data
- json(对于这个补充一个如果你看到json数据时
jqxxx(js对象)
这是jsonp格式):对应参数json
- files:对应参数
files
1.data
data ={}字典的形式
2.json
json={}字典的形式
注意点
:data
与json
参数共存的是情况下只会生效data里的参数
3.files
写法固定
files = {'文件名':open(文件路径
,'rb')}
三.概念
-
params
:字典或字节序列,作为参数增加到链接中 -
data
:字典,字节序列或文件对象,作为请求的内容 -
json
:JSON格式的数据,作为Request的内容 -
headers
:字典,HTTP定制头(模拟浏览器进行访问) -
cookies
:字典或CpplieJar,Request中的cookie -
auth
:元祖,支持HTTP认证功能 -
files
:字典类型,传输文件 -
timeout
:设定超时时间,秒为单位 -
proxies
:字典类型,设定访问代理服务器,可以增加登陆认证 -
allow_redirects
:True//False,默认为True,重定向开关 -
stream
:True/False,默认为True,获取内容立即下载开关 -
verify
:True/False,默认为True,认证SSL证书开关 -
cert
:本地SSL证书路径