python之https请求,多个接口公用登录态,session的使用

举例

import requests

class Check_url():

    def __init__(self):
        self.urls=[]
        self.errors=[]
        self.ids=[]
        requests.packages.urllib3.disable_warnings()
        header = {
            "Referer": "xxx"
        }
        url = '登录接口'
        param = {"verifycode": "xx", "username": "xx", "password": "xxx", "cpinsadm_cryptCode": "xxx"}
        
        #调用登录接口,获取到登录态
        session = requests.Session()
        session.post(url, data=param, headers=header, verify=False)

        url = '登录后获取链接接口'
        for page in range(1,2):
            try:
                param = {"pageno": page, "t": "1585629902590"}
        #使用已经获取登录态的session去请求接下来的接口        
                res = session.get(url, params=param, headers=header, verify=False)
                res = res.json()
                if res["errno"]==0:
                    for i in range(len(res["record"])):
                        self.urls.append(res["record"][i]["tfurl_nologin"])
                        self.ids.append(res["record"][i]["id"])
                else:
                    self.errors.append(res["errno"])
                    self.errors.append(res["errmsg"])
            except Exception as msg:
                print(msg)

这里需要有两个点:
1,session的使用
先调用登录接口获取到登录态

session = requests.Session()
session.post(url, data=param, headers=header, verify=False)

再去请求其它需要登录的接口,拿到信息

res = session.get(url, params=param, headers=header, verify=False)

2,线上请求https接口
一般请求https接口会报错提示认证,所以需要在请求前做一下处理
第一步:解决requests提示警告InsecureRequestWarning的问题

requests.packages.urllib3.disable_warnings()

第二步:在requests做请求的时候,为了避免ssl认证,可以将verify=False

res = session.get(url, params=param, headers=header, verify=False)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值