py每日spider案例之某website之headers请求参数(ymg_ssr)逆向
逆向参数:
加密参数定位位置:
py之请求:
import requests
headers = {
"Accept": "application/json, text/plain, */*",
"Accept-Language": "zh-CN,zh;q=0.9",
"Cache-Control": "no-cache",
"Connection": "keep-alive",
"Pragma": "no-cache",
"Referer": "https://aiqicha.baidu.com/s?q=%E5%B0%8F%E7%B1%B3&t=0",
"Sec-Fetch-Dest": "empty",
"Sec-Fetch-Mode": "cors",
"Sec-Fetch-Site": "same-origin",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36",
"X-Requested-With": "XMLHttpRequest",
"Zx-Open-Url": "https://aiqicha.baidu.com/s?q=%E5%B0%8F%E7%B1%B3&t=0",
"sec-ch-ua": "\"Google Chrome\";v=\"137\", \"Chromium\";v=\"137\", \"Not/A)Brand\";v=\"24\"",
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": "\"Windows\"",
"ymg_ssr": "1755921942331_1756000535379_gtxKmQTxU0OJDCtBCH+lINwacwOr/OqwLp3/98Y4dcP9TN0cQRZ/64xVCRFQWpsWLlIBVMYwHncje6DQ2PcFjniHnT1eDpgE/DU0jLlGbVqaD3iOFJYAle6iWzy2aA5knCjk9XbHjc0+wxC7fSwazcKYVqRmA1PPGP/p5wVoCfnkRrDtUrvClZ8OM469jVnQQHApm+Tf7gdRKM62RXEIAbySe/OwmWPy6xI8AmHnf7WP8ilDrIVWDugrLYuIfP+Zi0pkufldoLE/3ZwoxApMe1B0rtZk+hc7Nx4cwA4vlsq6yU/UvKGblR7eH/KAn0v9R+71MeP+g7ZX6XpB2zU0oA=="
}
cookies = {
"BIDUPSID": "CEA121E0D6B652962F039EA54D31EA39",
"PSTM": "1755923625",
"BAIDUID": "CEA121E0D6B65296D7C534FEA0C844DB:FG=1",
"BAIDUID_BFESS": "CEA121E0D6B65296D7C534FEA0C844DB:FG=1",
"BA_HECTOR": "8lak8h2ha52ha08ka18024852524aj1kaih5924",
"ZFY": "t70XLZMhIfQ4BoOAvFvrZ1QvtHKYSFrfm5FAy7rzONM:C",
"ab175599720": "f1acacbcfd5a3376caf9f4666b93eb0917560004824a2",
"Hm_lvt_ad52b306e1ae4557f5d3534cce8f8bbf": "1756000483",
"Hm_lpvt_ad52b306e1ae4557f5d3534cce8f8bbf": "1756000483",
"HMACCOUNT": "349C61B60410186B",
"in_source": "",
"log_first_time": "1756000482874",
"ZX_UNIQ_UID": "da5ee25c40119dd68a7aa351ec701fdf",
"ab_sr": "1.0.1_MGMwYTY3NzMwN2YwZjdlN2FkMzg3Y2Q3YWJmNjI5YmM2MjFkNTkzOTQ3NjUwZTFlODI4MDFiYzExMjlhZDBkNGYzMDdiMWExYTI5YmM3ZGQ2MjBiYTRkMzM3ODgzNmNmNGI2OGZlNjE0Y2FlZTZiMzIxNGI4NTU3Y2ZkNDBiNzcwNzk1OTk0Zjc3NzljNzM1NTk5ODY5MGY5MjA0ZGNhZA==",
"_s53_d91_": "46052348ed05146d800d133dbf3b88d7c9c07495f32bb0d7b014de1369ca8f4929cb5d52ab04c8e0fb8f86fd7972fbf757b8574569488b7f97ed8c66692c8f7f8accb8d8f5b72fbb1141822648d1b7a2652385f0613c2fea712517d82240b58a18f915b471619d1711f3b048cfa719f970da6c18de524a7588328b9eeb8cb9dcc593438a5c07fd6ad1d627956bb51ccd3d7f7a99663788ca092ada66a0323a622097b13fd4d5b0402b274a3334515575302cdd7cc05e68fed2a1fb460d3911c143ad96b0fe4a31186153333488708e434dc925b20cd905cc40095b790d57cfcf",
"_j47_ka8_": "57",
"_y18_s21_": "228d2ace",
"RT": "\"z=1&dm=baidu.com&si=c535fcea-bcb6-43ec-9318-9c9d6932a6ec&ss=mep1chqh&sl=3&tt=3ew&bcn=https%3A%2F%2Ffclog.baidu.com%2Flog%2Fweirwood%3Ftype%3Dperf&ld=14wk&nu=9y8m6cy&cl=8t4\"",
"log_last_time": "1756000535376"
}
url = "https://aiqicha.baidu.com/s/advanceFilterAjax"
params = {
"q": "小米",
"t": "",
"p": "2",
"s": "10",
"o": "0",
"f": "{}"
}
response = requests.get(url, headers=headers, cookies=cookies, params=params)
print(response.text)
print(response)
js之逆向:
dD=require('crypto-js')
a2='{"ua":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36","url":"https://aiqicha.baidu.com/s?q=%E5%B0%8F%E7%B1%B3&t=0","platform":"Win32","clientTs":1756000607642,"version":"1.0.0.5"}'
ag = {
'\x73\x74\x72\x69\x6e\x67\x69\x66\x79': function(a2) {
for (var a8 = a2['words'], a9 = a2['\x73\x69\x67\x42\x79\x74\x65\x73'], ae = this['_map'], a3 = (a2['clamp'](),
[]), a5 = 0x0; a5 < a9; a5 += 0x3)
for (var af = (a8[a5 >>> 0x2] >>> 0x18 - a5 % 0x4 * 0x8 & 0xff) << 0x10 | (a8[a5 + 0x1 >>> 0x2] >>> 0x18 - (a5 + 0x1) % 0x4 * 0x8 & 0xff) << 0x8 | a8[a5 + 0x2 >>> 0x2] >>> 0x18 - (a5 + 0x2) % 0x4 * 0x8 & 0xff, ad = 0x0; ad < 0x4 && a5 + 0.75 * ad < a9; ad++)
a3['push'](ae['charAt'](af >>> 0x6 * (0x3 - ad) & 0x3f));
var ag = ae['charAt'](0x40);
if (ag)
for (; a3['length'] % 0x4; )
a3['push'](ag);
return a3['\x6a\x6f\x69\x6e']('');
},
'\x70\x61\x72\x73\x65': function(a2) {
var a8 = a2['\x6c\x65\x6e\x67\x74\x68']
, a9 = this['_map'];
if (!(ae = this['_reverseMap']))
for (var ae = this['_reverseMap'] = [], a3 = 0x0; a3 < a9['\x6c\x65\x6e\x67\x74\x68']; a3++)
ae[a9['charCodeAt'](a3)] = a3;
for (var a5, af, ad = a9['charAt'](0x40), ag = (!ad || -0x1 !== (ad = a2['\x69\x6e\x64\x65\x78\x4f\x66'](ad)) && (a8 = ad),
a2), br = a8, bs = ae, bt = [], bu = 0x0, bv = 0x0; bv < br; bv++)
bv % 0x4 && (af = bs[ag['\x63\x68\x61\x72\x43\x6f\x64\x65\x41\x74'](bv - 0x1)] << bv % 0x4 * 0x2,
a5 = bs[ag['charCodeAt'](bv)] >>> 0x6 - bv % 0x4 * 0x2,
af = af | a5,
bt[bu >>> 0x2] |= af << 0x18 - bu % 0x4 * 0x8,
bu++);
return aa['\x63\x72\x65\x61\x74\x65'](bt, bu);
},
'\x5f\x6d\x61\x70': '\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x30\x31\x32\x33\x34\x35\x36\x37\x38\x39\x2b\x2f\x3d'
};
function eg(a2, a8, a9) {
return a2 = '\x6f\x62\x6a\x65\x63\x74' == typeof a2 ? JSON[b('0xb')](a2) : void 0x0 === a2 ? '' : '' + a2,
dD.AES['encrypt'](a2, dD.enc.Utf8.parse(a8), {
'iv': dD.enc.Utf8.parse(a9),
'mode': dD.mode.CBC,
'padding': dD.pad.Pkcs7
})['ciphertext']['toString'](ag);
}
ae =
+new Date();
ymg_ssr='\x31\x37\x35\x35\x39\x32\x31\x39\x34\x32\x33\x33\x31\x5f' + ae + '\x5f' + eg(a2, 'okaekwyaegkqiggi', 1234567887654321)
console.log(ymg_ssr)