頭條搜索精選 參數(shù)分析
本文所有教程及源碼、軟件僅為技術(shù)研究。不涉及計(jì)算機(jī)信息系統(tǒng)功能的刪除、修改、增加、干擾,更不會影響計(jì)算機(jī)信息系統(tǒng)的正常運(yùn)行。不得將代碼用于非法用途,如侵立刪!
頭條搜索精選 參數(shù)分析
環(huán)境
win10
Python3.9
Chrome
抓包接口分析
主要是需要這一塊的內(nèi)容

通過抓包分析發(fā)現(xiàn)在html中直接有json數(shù)據(jù)

現(xiàn)在只需要請求頁面然后提取出需要的json數(shù)據(jù)即可,現(xiàn)在重點(diǎn)分析一下請求所需的參數(shù),經(jīng)過測試得知,ttwid是必要參數(shù),看長度和驗(yàn)證流程和dy極為相似,直接用dy的套一下測試發(fā)現(xiàn)是一樣的。
cookies = {
? ?# "tt_webid": "7221851119085061689",
? ?# "_ga": "GA1.1.1371017124.1681468304",
? ?# "passport_csrf_token": "086bf595bf03413a64b6250e818f8861",
? ?# "_ga_QEHZPBE5HH": "GS1.1.1687776009.2.0.1687776009.0.0.0",
? ?"ttwid": "1%7C22KnJ4OamTx5lIoxDKM-JBA_0MZigRB0iOvI-ouOU%7C1687776011%7C5a059c3a4eaa05094b2389065993850c62df3b6095a3b5b9abb6ebbbd781d4",
? ?# "_tea_utm_cache_4916": "undefined",
? ?# "_S_WIN_WH": "1366_657",
? ?# "_S_DPR": "1",
? ?# "_S_IPAD": "0",
? ?"s_v_web_id": "verify_ljcqae1y_flG7UGHi_j6mx_4ZjM_8dt3_z9Lxvp74pqk5"
}
ttwid生成
驗(yàn)證流程: 1.先獲取ac_nonce 2.根據(jù)ac_nonce本地生成ac_signature 3.使用ac_nonce和__ac_signature 獲取ttwid
headers_base = {
? ? ? ?"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
? ? ? ?"Accept-Language": "zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7",
? ? ? ?"Cache-Control": "no-cache",
? ? ? ?"Connection": "keep-alive",
? ? ? ?"Pragma": "no-cache",
? ? ? ?"Sec-Fetch-Dest": "document",
? ? ? ?"Sec-Fetch-Mode": "navigate",
? ? ? ?"Sec-Fetch-Site": "none",
? ? ? ?"Sec-Fetch-User": "?1",
? ? ? ?"Upgrade-Insecure-Requests": "1",
? ? ? ?"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36",
? ? ? ?"sec-ch-ua": "\"Chromium\";v=\"104\", \" Not A;Brand\";v=\"99\", \"Google Chrome\";v=\"104\"",
? ? ? ?"sec-ch-ua-mobile": "?0",
? ? ? ?"sec-ch-ua-platform": "\"Windows\""
? ?}
? ?url = f"https://www.toutiao.com/"
? ?# sess.mount(url , CipherAdapter())
? ?__ac_nonce = sess.get(url, headers=headers_base).cookies.get('__ac_nonce')
? ?print(__ac_nonce)
? ?__ac_signature = get_ac_sign(__ac_nonce)
? ?print(__ac_signature)
? ?headers = {
? ? ? ?'cookie': f'__ac_nonce={__ac_nonce}; __ac_signature={__ac_signature};
? ? ? ?'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36'
? ?}
? ?ttwid = requests.get(headers=headers).cookies.get('ttwid')
? ?print(ttwid)
效果

資源下載
本文僅供學(xué)習(xí)交流使用,如侵立刪!