前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >头条 _signature、 __ac_nonce、 __ac_signature参数

头条 _signature、 __ac_nonce、 __ac_signature参数

原创
作者头像
andrew_a
修改2021-01-14 18:06:37
3.8K0
修改2021-01-14 18:06:37
举报
文章被收录于专栏:Python爬虫与数据分析

接口中有参数 _signature 参数

直接全局搜索这个参数,会在一个 index-*.js 中搜索到, 虽然 captcha.js 中也有,不过没用

在文件中找到该字符串位置,打断点,调试。

继续下一步,调试会跳转到 acrawler.js 文件中.

acrawler.js 文件

下一步直接将 js 文件拿出来, 执行。

1、简化 js, 删除一些没有用的东西

参数后改为空列表即可

2、nodewindowglobal

定义

代码语言:txt
复制
var window = global;

继续执行,缺啥补啥(调试打印 Z[S],就可以知道缺啥了 )

<img src="http://img.andrewblog.cn/workqiniu/carbon (1).png-gg" style="zoom:50%;" />

代码语言:txt
复制
window.location = params.location;
window.navigator = params.navigator;

然后就可以出来短的了

有个问题加了下面的代码就会报错

代码语言:txt
复制
window.byted_acrawler && window.byted_acrawler.init({
                aid: 24,
                dfp: !0
            });

注释掉就可以,不知道啥原因。

长的 _signature 需要加 cookie,把 cookie 放进去就 ok 了。放在主要加密函数的后面,放在前面没用。不生效

结果:

测试一下

请求 api/pc/feed 接口时,需要在前面加上 toutiao 进行加密。

cookie 中的 ac_nonce ac_signature

直接请求详情,不携带 cookie, 会响应 cookie __ac_nonce

image-20201203175421719
image-20201203175421719

通过 __ac_nonce 生成 __ac_signature

直接调用上面的方法即可

代码语言:txt
复制
function f2(__ac_nonce){
    ac_signature = window.byted_acrawler.sign("", __ac_nonce);
    return ac_signature
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 有个问题加了下面的代码就会报错
  • cookie 中的 ac_nonce ac_signature
相关产品与服务
安全咨询
安全咨询(Cybersecurity Consultation Service,CSCS)依据国家政策和国家信息安全标准,基于客户信息安全需求,提供企业信息安全规划与管理方面的安全咨询。安全咨询协助企业识别信息资产及业务流程的信息安全弱点,并针对信息安全威胁提供信息安全风险处理规划建议。安全咨询包括合规类咨询服务、安全管理咨询服务、安全体系咨询服务与行业安全解决方案咨询服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档