抖音__ac_signature

Posted 冬晨夕阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了抖音__ac_signature相关的知识,希望对你有一定的参考价值。

主页中有一个IP的信息,但是请求需要__ac_nonce和__ac_signature。

__ac_nonce是初次请求后服务端返回的,本文分析一下__ac_signature怎么来的。


用chrome 插件去定位 cookie的位置

var code = function()
var org = document.cookie.__lookupSetter__(cookie);
document.__defineSetter__("cookie",function(cookie)
if(cookie.indexOf(__ac_signature)>-1)
debugger;

org = cookie;
);
document.__defineGetter__("cookie",function()return org;);

var script = document.createElement(script);
script.textContent = ( + code + )();
(document.head||document.documentElement).appendChild(script);
script.parentNode.removeChild(script);

清空cookie,刷新后断到点

抖音__ac_signature_开发语言

往回调试一步。
抖音__ac_signature_运行报错_02

可以看到__ac_signature怎么来的。
抖音__ac_signature_前端_03

进来后,先断个点。这样后续把插件关掉后,再清空cookie刷新页面可以直接进来。
抖音__ac_signature_前端_04


补环境

把该文件的所有代码复制到本地运行。
抖音__ac_signature_javascript_05

会报错:
抖音__ac_signature_开发语言_06

补referer, DOM属性document.referrer
抖音__ac_signature_前端_07


再运行,报错ReferenceError: window is not defined ,补一个window 。

继续运行报错:
抖音__ac_signature_前端_08
到对应位置断点,看看S是什么,这里发现S是各种对象,那问题不在S,缺了其他环境。

往下看,最后的参数里面有很多属性,要补的和浏览器一样,补上后就没有该错误了。
抖音__ac_signature_chrome_09


最后报错:undefined (reading ‘init’)

抖音__ac_signature_开发语言_10

说明window中没有byted_acrawler,追代码找到k方法中,最后是放在this中,那把这里的this改成window

抖音__ac_signature_javascript_11


再次执行,成功生成。

目前比较短,长的把cookie加进去就行了。
抖音__ac_signature_前端_12
经测试,长短不影响请求。


过几天再把代码贴上= =


以上是关于抖音__ac_signature的主要内容,如果未能解决你的问题,请参考以下文章

提醒:涉及数据库这类的东西一定需要注意长短链接问题

下载 抖音热门 木筏生存 Raft 下载官网地址_点击立即试玩

18OpenCV Python 简单实现一个图片生成(类似抖音生成字母人像)

抖音进攻,B站退守

录制抖音直播视频批处理

抖音无水印视频解析php源码