美团token解决思路
?美團官網美食區token:
_token=eJxVjs1ygjAURt8lWxhJUBJ0h4U2UBVBxEqnC4gIlAERiD90+u5NZ+yidzLzfTn3LO4XaO0DmCEIpxDK4JK2YAbQCI4wkEHfiY02wQSLQRoRAvvPMB7LIGlDE8ze0RhhGWn6xy/xBRAEY5lgQR5VFVWdiPfr2EIBed83M0W5xaMqLXoe1yN2qhTRu7xQEoSmirgDCL0KhC6yfGT8yP7vvxSHC7crslq01LkePlm/mpuW59N1lE0UVV0v9JLejBQ6Mdu4xlspDfFApfMKpZ6XWddmuy2M2FmaJqvLJpx6mvFkSAkcn0KaZ8TsbHqsuVW4pJ5IF6Ij1NmbXblXsUO0qjlAj9OX1/ZG7jm8OwG3A+gvOFk2jDShNvezgdlWdTxJDWvhy4HDnWM0qRJ4tFD4GVbbIMoifbj5WnB+0uuLS1O+iwoHtc9HNWz3b26wY0m4WJHsk8bpgPn4dR2e/GG9jxJnc4eWmyMJXreFD75/AB/OjFY=
? ? ? ?1:結尾出現=,考慮base64編碼,通過python base64解碼后得到以下byte數據
? ? ? ?正常情況下 base64.b64decode()解碼后是正常字符串,這里出現十六進制的ASCii碼。
? ? ? 2:考慮原數據可能進行二進制壓縮+編碼,使用python zlib庫對byte數據進行解壓,代碼如下
import base64,zlib token_decode=base64.b64decode(token.encode()) //token為token字符串#解壓16進制數據流 token_string=zlib.compress(token_decode)? ? ? 3:解壓過后會得到如下參數
? ? ? ?"rId","ver","ts",'cts','brVD','brR','bI','mT','kT,'aT','tT','aM','sign'
? ? ? 刷新頁面捕獲js請求,找到token的js生成函數得到js生成token代碼? ??部分代碼可能需要反混淆得到源代碼.
? ? ? 除了ts+cts(cts=ts+100即可)參數需要本地構造,其他參數通過分析和找到每個參數的生成函數即可明白參數意義, 上圖沒有sign參數,將token解碼+解壓過后會看到參數sign(參數sign同樣經過壓縮+base64編碼,用上面的解碼函數能看到sign參數,sign參數基本都是一些get提交的參數,都可以在頁面源碼找到)
? ? ? ?比較重要的參數為ts,ts代表一個時間戳,利用python構造1970年--現在的秒數差生成時間戳,(每一個token都有一個時效性,因此在token失效的時候需要偽造一個token才能獲取到ajax返回的json數據)
?
?
?
?
?
?
總結
以上是生活随笔為你收集整理的美团token解决思路的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序反编译wxss文件缺失_反编译
- 下一篇: YOLOv5中autoanchor.py