码迷,mamicode.com
首页 > 其他好文 > 详细

requests保持登录session ,cookie 和 token

时间:2019-11-25 20:41:47      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:member   try   信息   word   ram   mail   头部   put   utf-8   

一、request提供了一个一个叫做session的类,来实现客户端和服务端的会话保持

技术图片
# coding:utf-8
import requests
url = "https://passport.cnblogs.com/user/signin"

headers = {
                  头部信息已省略

                   }
payload = {"input1":"xxx",
                "input2":"xxx",
                "remember":True}

s = requests.session()
r = s.post(url, json=payload, headers=headers,verify=False)
print r.json()
技术图片

二、获取登录后的cookie 和 token

请求成功之后获取cookies,然后吧cookies存到固定配置文件里面

技术图片
    def post(self):
        try:
            r = requests.post(self.url, headers=self.headers, params=self.params, data=self.data, timeout=float(timeout))
            # response.raise_for_status()
            result =decodeToBase64(r.content)
            response = json.loads(result)
            cookies = r.cookies.get_dict()   #  获取登录之后 cookie
            localReadConfig.set_headers("cookies", str(cookies))   #把cookie存到配置文件里面去
            return response
        except TimeoutError:
            self.logger.error("Time out!")
            return None
技术图片

获取登录后的token

技术图片
def login():
    """
    login
    :return: token
    """
    # set url
    url = common.get_url_from_xml(login)
    localConfigHttp.set_url(url)

    # set header
    token = localReadConfig.get_headers("token_v")
    header = {"token": token}
    localConfigHttp.set_headers(header)

    # set param
    data = {"email": localLogin_xls[0][3],
            "password": localLogin_xls[0][4]}
    localConfigHttp.set_data(data)

    # login
    response = localConfigHttp.post().json()
    token = common.get_value_from_return_json(response, "member", "token")
    return token
技术图片

保持登录的接口请求,就获取cookie然后传到头部header里面去,token传到body里面去,然后就可以发布成功了。

requests保持登录session ,cookie 和 token

标签:member   try   信息   word   ram   mail   头部   put   utf-8   

原文地址:https://www.cnblogs.com/abdm-989/p/11930003.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!