抖音_signature参数分析

以抖音作者页为例:https://www.iesdouyin.com/share/user/xxx

从接口可以得到作者发布的视频列表:
https://www.iesdouyin.com/web/api/v2/aweme/post/?user_id=xxx&sec_uid=&count=21&max_cursor=0&aid=1128&_signature=etVQHxATJIUJI1pwOqp2dnrVUA&dytk=dd51884f959fa649020e74cbd09044e0

参数里dytk从作者页抽取得到,_signature参数为js生成,打断点找到_signature的生成位置

在这里插入图片描述

在这里插入图片描述

nonce就是作者id,找到_bytedAcrawler的生成位置。
在这里插入图片描述
在这里插入图片描述

再找__M的生成位置
在这里插入图片描述

验证找到的地方是否正确:
在console中调用对应的生成方法

dycs = __M.require("douyin_falcon:node_modules/byted-acrawler/dist/runtime") ;

signc = dycs.sign(作者id)

这时候会发现signc与接口中的_signature字段一致。
因此讲__M生成部分的代码define sign那一块的代码都贴到一个html里。并预先写入一个作者id打印出对应的signature。如果直接打开html会发现与实际的_signature有出入,因此可以好好看看有没有哪块js给window对象赋值了。

最后html加入该参数就能拿到正确的_signature字段。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章