自行npm 或 cnpm 安装
可请求接口
http://localhost:5000/user?uid=102064772608
返回内容示例
请求接口
http://localhost:5000/data?uid=102064772608
返回内容示例
服务搭建的代码在node_douyin_service2文件夹
python调用服务示例在douyinpy文件夹
思路几乎照抄https://github.com/coder-fly/douyin-signature 只不过改成了puppeteer+express搭建服务(原来是pyppeteer)
尝试过在node环境中计算signature奈何那段签名算法混淆太牛逼无法移除检测环境的代码,最后用了puppeteer驱动chromium,并用express做成服务。 核心逻辑是 1.得到uid请求源码达到tac
2.puppeteer驱动chromium在console中执行签名算法
3.返回signature
尝试获取代码获取完整tac并进行传递,但发现代码获取的tac与浏览器中的不同(原因可能是特殊字符的编码问题),所以只获取tac的前一小部分。 传递前用base64编码防止因特殊字符的存在产生各种问题。