python3-今日头条头条登入加密破解

python3-今日头条头条登入加密破解[Python常见问题]

仅供学习

一.登入入口的url

https://sso.toutiao.com/account_login/v2/

二.需要破解的提交参数

account
password
fp(后续验证发现他不做校验)

三.找到登入加密的js(在第二层)

function a(e) {
                    var t, r = [];
                    if (void 0 === e)
                        return "";
                    t = function(e) {
                        for (var t, r = e.toString(), n = [], i = 0; i < r.length; i++)
                            0 <= (t = r.charCodeAt(i)) && t <= 127 ? n.push(t) : 128 <= t && t <= 2047 ? (n.push(192 | 31 & t >> 6),
                            n.push(128 | 63 & t)) : (2048 <= t && t <= 55295 || 57344 <= t && t <= 65535) && (n.push(224 | 15 & t >> 12),
                            n.push(128 | 63 & t >> 6),
                            n.push(128 | 63 & t));
                        for (var a = 0; a < n.length; a++)
                            n[a] &= 255;
                        return n
                    }(e);
                    for (var n = 0, i = t.length; n < i; ++n)
                        r.push((5 ^ t[n]).toString(16));
                    return r.join("")
                }

四.翻译js为python

def jing_ri_tou_tiao_encrype(data):
    ls = list(data.encode("utf8"))
    new_list = []
    [new_list.append(str(hex(5 ^ls[index]).replace("0x",""))) for index in range(len(data))]
    data = "".join(new_list)
    return data

五.完善代码

import requests


def jing_ri_tou_tiao_encrype(data):
    ls = list(data.encode("utf8"))
    new_list = []
    [new_list.append(str(hex(5 ^ ls[index]).replace("0x", ""))) for index in range(len(data))]
    data = "".join(new_list)
    return data


account = jing_ri_tou_tiao_encrype("+86手机号")
password = jing_ri_tou_tiao_encrype("密码")

url = "https://sso.toutiao.com/account_login/v2/"
data = {
    "aid": "1231",
    "service": "https://mp.toutiao.com/",
    "account_sdk_source": "sso",
    "mix_mode": "1",
    # "fp": "verify_kg910vw9_W2a6NlcX_GN0g_4WbF_8FAj_ovWxG4zUiTK2",
    "account": account,
    "password": password,
}
headers = {
    "Referer": "https://mp.toutiao.com/auth/page/login/?redirect_url=JTJG",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.90 Safari/537.36"
}
res = requests.post(url, data=data, headers=headers)
print(res.json())

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » python3-今日头条头条登入加密破解