requests请求,cookie与session处理

1.requests

requests模块是python的第三方模块,用来发送网路请求,常用于爬虫,能够完全满足基于HTTP协议的接口测试。

requests模块安装

安装:pip install requests

验证:pip show requests

其他请求模块

urllib(古董)

requests(好用):同步,阻塞模块

aiohttp:异步请求模块

requests请求

 例1

# 请求方法:get
# 请求地址:http://www.baidu.com
# 响应数据
import requests
url='http://www.baidu.com'
ser=requests.get(url)
ser.encoding='utf-8'
print(ser.text)

例2

import requests
url='http://www.baidu.com/s?'
params={'wd':'花儿为什么这样红'}
res=requests.get(url,params=params)
res.encoding='utf-8'
with open('test01.html','w',encoding='utf-8')as f:
    f.write(res.text)

例3

import requests
url='http://www.baidu.com/s?'
params={'wd':'花儿为什么这样红'}
hds={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36","cookie":"BIDUPSID=EC4EEBADF48D8665E6839E1C01C33433; PSTM=1622084630; BAIDUID=EC4EEBADF48D86654AFF66BB250B9EF8:FG=1; __yjs_duid=1_711d220d483b1680ef849db5353653701622084644957; BD_UPN=12314753; BCLID_BFESS=10823244749074511429; BDSFRCVID_BFESS=WMKOJexroG38mOjH_uIJuyuiLOGM4w5TDYLECrZpZjg7KlFVgVdREG0PtjJ5HU4bLrA9ogKK0mOTHv-F_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF_BFESS=tJAj_D-btK03fP36qR6sMJ8thmT22-usQ2ji2hcHMPoosI89hfn8yh40yt6thRQ0BgOx2Cb5JxbUoqRHLn5AKhIqbNJi2U5p5acbbq5TtUJMjlFGyh_M-xAXLHryKMnitIj9-pnKHlQrh459XP68bTkA5bjZKxtq3mkjbPbDfn028DKu-n5jHjcWDGoP; H_WISE_SIDS=110085_127969_164326_175667_176398_178384_178623_179348_179380_179437_181133_181135_181588_182000_182238_182273_182531_182860_183030_183329_183345_184042_184201_184267_184320_184560_184734_184793_184811_185029_185241_185268_185511_185517_185557_185752_185880_186038_186068_186318_186411_186510_186596_186635_186662_186682_186841_186896_187023_187190_187215_187292_187310_187432_187447_187669_187683_187726_187816_187928_187935_187963_188182_188296_188353_188426_188467_188664_188730_188831_188845_188875_188899; BDORZ=FFFB88E999055A3F8A630C64834BD6D0; ab_sr=1.0.1_ZWY5MWUxZWM4MTU5MWQwNDE2NjkzNTFhODg0OTVjNWViOWFiNDdmNzU3YjhhZDYwMTc5ZTlkMzNhMmFkMTMxZTEwMGY0YTRlOWEwM2Q3MDZhM2VhYzc4YzNhODEwZWIyYjdkNzcyYjZhMDdiODZhODQzMDA2OTNkMDYxMDg0ZmUwNTc5MjBmYWY2MTNlNWJjOGY3YzI1YTUzNTU2NjBjMDI3OGI1MjcxOTk1YmNmODcwZTc5OGM2OGFiZDM1OGY1; BAIDUID_BFESS=9E0F0B8E88B7202737383610F65D36EE:FG=1; BDRCVFR[8gzLr2xelNt]=IdAnGome-nsnWnYPi4WUvY; delPer=0; BD_CK_SAM=1; PSINO=2; COOKIE_SESSION=70583_0_8_7_13_34_1_0_5_8_3_8_19439_0_0_0_1633696041_0_1633766571%7C9%23375892_8_1632653484%7C5; BDUSS=M4OUN1b3gyLU5RV0lMYkx5M3hSV1IxUm1pOXNoYXVFbHM2d2pOd3lMZHYyb2hoRUFBQUFBJCQAAAAAAAAAAAEAAAA0MdZU18~R18zst-8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG9NYWFvTWFhaE; BDUSS_BFESS=M4OUN1b3gyLU5RV0lMYkx5M3hSV1IxUm1pOXNoYXVFbHM2d2pOd3lMZHYyb2hoRUFBQUFBJCQAAAAAAAAAAAEAAAA0MdZU18~R18zst-8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG9NYWFvTWFhaE; H_PS_PSSID=34644_34446_34067_31254_34655_34712_34584_34518_34705_26350_34627_34428_34702_34681; H_PS_645EC=e2079NFw4DKG2xJD8D697vbITYGR%2FE%2Bq2nFY6HOVnKZ78MVlsqUccYWv0%2FA%2FNsA1EQ0N; BA_HECTOR=848hag2h04a1018gda1gm2jbq0r"}
res=requests.get(url,params=params,headers=hds)
res.encoding='utf-8'
with open('test01.html','w',encoding='utf-8')as f:
    f.write(res.text)

例4

import requests
import json
url='http://ihrm-test.itheima.net/api/sys/login'
data={'mobile':'12345676543','password':'123456'}
headers={'Content-Type':'application/json'}
res=requests.post(url,data=data,headers=headers)
one=json.loads(res.text)  #转成json格式方法1#
print(one)
print(type(res.json()))
print(res.json())  #转成json格式方法2#

例5

import requests
url='https://w.wallhaven.cc/full/72/wallhaven-72rd8e.jpg'
headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36'}
ser=requests.get(url,headers=headers)
with open('001.jpg','wb')as f:
    f.write(ser.content)

 

requests模块对cookie的处理

在headers中多加一个cookie

import requests
url='http://www.baidu.com/s?'
params={'wd':'花儿为什么这样红'}
hds={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.71 Safari/537.36","cookie":"BIDUPSID=EC4EEBADF48D8665E6839E1C01C33433; PSTM=1622084630; BAIDUID=EC4EEBADF48D86654AFF66BB250B9EF8:FG=1; __yjs_duid=1_711d220d483b1680ef849db5353653701622084644957; BD_UPN=12314753; BCLID_BFESS=10823244749074511429; BDSFRCVID_BFESS=WMKOJexroG38mOjH_uIJuyuiLOGM4w5TDYLECrZpZjg7KlFVgVdREG0PtjJ5HU4bLrA9ogKK0mOTHv-F_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF_BFESS=tJAj_D-btK03fP36qR6sMJ8thmT22-usQ2ji2hcHMPoosI89hfn8yh40yt6thRQ0BgOx2Cb5JxbUoqRHLn5AKhIqbNJi2U5p5acbbq5TtUJMjlFGyh_M-xAXLHryKMnitIj9-pnKHlQrh459XP68bTkA5bjZKxtq3mkjbPbDfn028DKu-n5jHjcWDGoP; H_WISE_SIDS=110085_127969_164326_175667_176398_178384_178623_179348_179380_179437_181133_181135_181588_182000_182238_182273_182531_182860_183030_183329_183345_184042_184201_184267_184320_184560_184734_184793_184811_185029_185241_185268_185511_185517_185557_185752_185880_186038_186068_186318_186411_186510_186596_186635_186662_186682_186841_186896_187023_187190_187215_187292_187310_187432_187447_187669_187683_187726_187816_187928_187935_187963_188182_188296_188353_188426_188467_188664_188730_188831_188845_188875_188899; BDORZ=FFFB88E999055A3F8A630C64834BD6D0; ab_sr=1.0.1_ZWY5MWUxZWM4MTU5MWQwNDE2NjkzNTFhODg0OTVjNWViOWFiNDdmNzU3YjhhZDYwMTc5ZTlkMzNhMmFkMTMxZTEwMGY0YTRlOWEwM2Q3MDZhM2VhYzc4YzNhODEwZWIyYjdkNzcyYjZhMDdiODZhODQzMDA2OTNkMDYxMDg0ZmUwNTc5MjBmYWY2MTNlNWJjOGY3YzI1YTUzNTU2NjBjMDI3OGI1MjcxOTk1YmNmODcwZTc5OGM2OGFiZDM1OGY1; BAIDUID_BFESS=9E0F0B8E88B7202737383610F65D36EE:FG=1; BDRCVFR[8gzLr2xelNt]=IdAnGome-nsnWnYPi4WUvY; delPer=0; BD_CK_SAM=1; PSINO=2; COOKIE_SESSION=70583_0_8_7_13_34_1_0_5_8_3_8_19439_0_0_0_1633696041_0_1633766571%7C9%23375892_8_1632653484%7C5; BDUSS=M4OUN1b3gyLU5RV0lMYkx5M3hSV1IxUm1pOXNoYXVFbHM2d2pOd3lMZHYyb2hoRUFBQUFBJCQAAAAAAAAAAAEAAAA0MdZU18~R18zst-8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG9NYWFvTWFhaE; BDUSS_BFESS=M4OUN1b3gyLU5RV0lMYkx5M3hSV1IxUm1pOXNoYXVFbHM2d2pOd3lMZHYyb2hoRUFBQUFBJCQAAAAAAAAAAAEAAAA0MdZU18~R18zst-8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG9NYWFvTWFhaE; H_PS_PSSID=34644_34446_34067_31254_34655_34712_34584_34518_34705_26350_34627_34428_34702_34681; H_PS_645EC=e2079NFw4DKG2xJD8D697vbITYGR%2FE%2Bq2nFY6HOVnKZ78MVlsqUccYWv0%2FA%2FNsA1EQ0N; BA_HECTOR=848hag2h04a1018gda1gm2jbq0r"}
res=requests.get(url,params=params,headers=hds)
res.encoding='utf-8'
with open('test01.html','w',encoding='utf-8')as f:
    f.write(res.text)

 打开网页账号是登录状态

session类自动封装cookie

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值