栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

使用Python模拟登陆虎扑,获取cookies

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Python模拟登陆虎扑,获取cookies

模拟的虎扑app登录逻辑
import requests
import hashlib
import re


def login(username, password):
    headers = {
        'Host': 'games.mobileapi.hupu.com',
        'user-agent': 'Mozilla/5.0 (Linux; Android 10; Redmi Note 8 Pro Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36 kanqiu/7.5.57.12101/9095 isp/1 network/0',
        # 'x-hupu-token': '',
        'content-type': 'application/x-www-form-urlencoded',
        # 'content-length': '438',
        # 'accept-encoding': 'gzip',
    }

    data = {
        'password': hashlib.md5(password.encode('utf-8')).hexdigest(),
        'timeline': '1658555262',
        'username': username,
        'clientId': '108774952',
        'crt': '1658555262476',
        'night': '0',
        'channel': 'error',
        'client': '4c8f6a75d094a7a0',
        '_ssid': 'PHVua25vd24gc3NpZD4=',
        '_imei': '4c8f6a75d094a7a0',
        'android_id': '4c8f6a75d094a7a0',
        'time_zone': 'Asia/Shanghai',
        'deviceId': 'BwEHDqdUu5BalI0Qujc05T5UKzTEHxYirVOU+MQFqzfxxLE2oqV6+kGvGwggv9jZWBwDQrg2C6HC7f1aJIwA00A==',
        'oaid': '63c82ca94bbeecb0',
        # 'sign': 'fa740b611aa382631c13e71eda1e8427'
    }
    # 用字典的键按字典序排序
    data = dict(sorted(data.items(), key=lambda x: x[0]))
    str = ''
    for key in data:
        if len(str) > 0:
            str += '&'
        str += key + '=' + data[key]
    # 加盐
    str += 'HUPU_SALT_AKJfoiwer394Jeiow4u309'
    print(str)
    # 计算sign,所有参数按字典序排序后拼接计算字符串md5得到sign签名,放入请求体中
    data['sign'] = hashlib.md5(str.encode('utf-8')).hexdigest()
    print(data['sign'])
    response = requests.post('https://games.mobileapi.hupu.com/1/7.5.57/bplapi/user/v1/loginByEmailPassword',
                             headers=headers, data=data)
    print(response.text)
    u = re.findall('"authToken":"(.*?):', response.text)  # u是用于身份验证的参数
    print(u)


login("17*******43", "1******8")

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1029651.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号