发布: 更新时间:2022-08-28 21:00:29
Requests库:python中的“浏览器”,基于urllib的HTTP库
requests库入门案例及使用步骤
resp = requests.请求方法(url='URL地址', params={k:v}, headers={k:v}, data={k:v}, json={k:v}, cookies='cookie数据'(如:令牌))
对比Postman我们填写的参数可以更好理解,对应着请求方式,URL,请求参数,请求头,请求体。
案例:发送POST请求
import requests
# 发送 post 登录请求,指定 url、请求头、请求体,获取响应结果
resp = requests.post(url="http://ihrm-test.itheima.net/api/sys/login",
# headers={"Content-Type": "application/json"}, 可以不写,json和data指明了请求体的数据类型:表单和json
json={"mobile": "13800000002", "password": "123456"})
# 打印响应结果 print(resp.json())
从requests的响应结果中提取出cookies,后续操作请求中携带此cookies
# 发送获取验证码请求
resp_v = requests.get(url="http://tpshop-test.itheima.net/index.php? m=Home&c=User&a=verify&r=0.21519623710645064")
# 从 获取验证码的响应结果,提取 cookie
my_cookie = resp_v.cookies
因为Cookie中的数据,都是Session传递的。因此,Session 可以直接自动管理cookie。
#创建session对象
session = requests.Session()
#使用session对象去发送请求,不用携带设置cookies参数
resp=session.get(url,headers,params,data,json)
案例:借助session重新实现上述TPshop商城登录,并获取“我的订单”页面数据。
实现步骤:
import requests
# 1. 创建一个 Session 实例。
session = requests.Session()
# 2. 使用 Session 实例,调get方法,发送获取验证码请求。(不需要获取cookie)
resp_v = session.get(url="http://tpshop-test.itheima.net/index.php? m=Home&c=User&a=verify&r=0.21519623710645064")
# 3. 使用 同一个 Session 实例,调用 post方法,发送 登录请求。(不需要携带 cookie)
resp = session.post(url="http://tpshop-test.itheima.net/index.php? m=Home&c=User&a=do_login&t=0.7094195931397276", data={"username": "13012345678", "password": "12345678", "verify_code": "8888"}) print(resp.json())
# 4. 使用 同一个 Session 实例,调用 get 方法,发送 查看我的订单请求。(不需要携带 cookie)
resp_o = session.get(url="http://tpshop-test.itheima.net/Home/Order/order_list.html") print(resp_o.text)
原神3.8心海武器推荐 原神3.8心海带什么武器
阴阳师寻迹骰怎么获得 阴阳师寻迹骰获得方法
王者荣耀妄想都市观光怎么获得 王者荣耀妄想都市观光活动
阴阳师新召唤屋和幕间皮肤效果怎么样 阴阳师新召唤屋和幕间皮肤获取方法介绍
羊了个羊7.26攻略 羊了个羊7月26日怎么过
崩坏星穹铁道求不得成就攻略介绍 崩坏星穹铁道求不得成就怎么获得
崩坏星穹铁道去吧阿刃成就攻略介绍 崩坏星穹铁道去吧阿刃成就怎么获得
时空中的绘旅人罗夏生日有什么复刻 绘旅人罗夏生日礼包复刻一览
银河境界线武器强度怎么看 银河境界线武器强度排行攻略
阴阳师红蛋蛋限时福利怎么获得 阴阳师再结前缘版本福利介绍