nodejs 某音douyin网页端搜索接口及x_bogus、a_bogus(包含完整源码)(2024-06-13)

前言


    x_bogus或a_bogus算法大概是对数据、ua、时间戳、浏览器的几个指纹进行计算,拿到一个110位大数组,然后转字符,在头部再添加十二位随机字符,再进行魔改的base64加密。
问:抖音的x_bogus、a_bogus值有什么用?

1.抖音所有数据的校验都离不开x_bogus、a_bogus。

2.抖音作为最大的短视频平台他的数据是十分多且有用的。

3.获取批量抖音的数据,例如评论、无水印视频、弹幕监听、直播间抢货等。
在浏览器按f12可找到搜索接口地址。

一、接口地址:

    api_url=`https://www.douyin.com/aweme/v1/web/search/item/?device_platform=webapp&aid=6383&channel=channel_pc_web&search_channel=aweme_video_web&sort_type=${sort_type}&publish_time=${publish_time}&keyword=${keyword}&search_source=switch_tab&query_correct_type=1&is_filter_search=${is_filter_search}&from_group_id=&offset=${offset}&count=10&pc_client_type=1&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=1536&screen_height=864&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=114.0.0.0&browser_online=true&engine_name=Blink&engine_version=114.0.0.0&os_name=Windows&os_version=10&cpu_core_num=8&device_memory=8&platform=PC&downlink=0.3&effective_type=2g&round_trip_time=1600&webid=7119735414450456103&msToken=${msToken}`;

二、参数说明


0、搜索结果按页返回,每页有10个视频

1、offset


    搜索分页的偏移;0为第一页,10为二页,20第三页。

2、search_id


   第二页还需要带上search_id参数;search_id由上一页返回。

3、sort_type


搜索结果排序
排序说明:
综合排序
sort_type=0
最新发布
sort_type=2
最多点赞
sort_type=1

4、publish_time
按发布时间过滤条件

不限
publish_time=0
一天内
publish_time=1
一周内
publish_time=7
半年内
publish_time=182

三、完整源代码

//----------------------------------------------模块初始化----------------------------------------------------
const User_Agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36";
const fs = require("fs");
const cookie= fs.readFileSync("./cookie.txt").toString('utf8');
//console.log(cookie);
let msToken="";
const https = require('node:https');
exports.get_search_data=get_search_data;//----------------------------------------------调用模块初始化----------------------------------------------------
//技术支持:byc6352或metabycf 39848872 telegram:byc01
const m_x_bogus = require('./x_bogus.js');
//-------------------------------------------------------------------------------------------------------------
async function get_search_data(keyword,offset,search_id,sort_type,publish_time) {try {msToken=getCookie("msToken");if(keyword===undefined || offset===undefined){return;}keyword=encodeURIComponent(keyword);if(offset>0 && search_id===undefined){return;}let is_filter_search=0;if(sort_type>0 || publish_time>0)is_filter_search=1;//-----------------------------------------------------------------------------------------------------let api_url="";if(offset===0)api_url=`https://www.douyin.com/aweme/v1/web/search/item/?device_platform=webapp&aid=6383&channel=channel_pc_web&search_channel=aweme_video_web&sort_type=${sort_type}&publish_time=${publish_time}&keyword=${keyword}&search_source=switch_tab&query_correct_type=1&is_filter_search=${is_filter_search}&from_group_id=&offset=${offset}&count=10&pc_client_type=1&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=1536&screen_height=864&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=114.0.0.0&browser_online=true&engine_name=Blink&engine_version=114.0.0.0&os_name=Windows&os_version=10&cpu_core_num=8&device_memory=8&platform=PC&downlink=0.3&effective_type=2g&round_trip_time=1600&webid=7119735414450456103&msToken=${msToken}`;elseapi_url=`https://www.douyin.com/aweme/v1/web/search/item/?device_platform=webapp&aid=6383&channel=channel_pc_web&search_channel=aweme_video_web&sort_type=${sort_type}&publish_time=${publish_time}&keyword=${keyword}&search_source=switch_tab&query_correct_type=1&is_filter_search=${is_filter_search}&from_group_id=&offset=${offset}&search_id=${search_id}&count=10&pc_client_type=1&version_code=170400&version_name=17.4.0&cookie_enabled=true&screen_width=1536&screen_height=864&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=114.0.0.0&browser_online=true&engine_name=Blink&engine_version=114.0.0.0&os_name=Windows&os_version=10&cpu_core_num=8&device_memory=8&platform=PC&downlink=0.3&effective_type=2g&round_trip_time=1600&webid=7119735414450456103&msToken=${msToken}`;let api_url_bogus=m_x_bogus.get_x_bogus(User_Agent,api_url);let refer_url=`https://www.douyin.com/search/${keyword}?publish_time=${publish_time}&sort_type=${sort_type}&source=tab_search&type=video`;let path=api_url_bogus.replace("https://www.douyin.com","");const options = {hostname: 'www.douyin.com',port: 443,path: path,method: 'GET',headers: {'Content-Type': 'application/json','Accept':'application/json','Referer': refer_url,'User-Agent': User_Agent,'Cookie':cookie,},};//console.log(api_url_bogus);const req = https.request(api_url_bogus,options, (res) => {console.log(`STATUS: ${res.statusCode}`);console.log(`HEADERS: ${JSON.stringify(res.headers)}`);res.setEncoding('utf8');var body="";res.on('data', (chunk) => {body+=chunk;});res.on('end', () => {console.log(body.length);console.log(body);});});req.on('error', (e) => {console.error(`problem with request: ${e.message}`);});req.end();}catch (e){console.error(`problem with get_search_data: ${e.message}`);}
}function getCookie(cname)
{let name = cname + "=";//var cc=cookie;//var ca = cc.split(';');let ca = cookie.split(";");for(var i=0; i<ca.length; i++){var c = ca[i].trim();if (c.indexOf(name)==0) return c.substring(name.length,c.length);}return "";
}//------------------------------------------------test----------------------------------------
get_search_data("易梦玲",0,undefined,0,0);

四、运行结果(截取一部分)


其中"logid":"202406131910573707A1B160EA8C199E6D"为下一页的search_id。

STATUS: 200
HEADERS: {"server":"Tengine","content-type":"application/json; charset=utf-8","content-length":"531430","connection":"close","date":"Thu, 13 Jun 2024 11:10:59 GMT","vary":"Accept-E
ncoding","x-tt-logid":"202406131910573707A1B160EA8C199E6D","bd-tt-error-code":"0","tt_stable":"1","status_code":"0","x-envoy-response-flags":"-","rip":"[fdbd:dc01:a:226::103]:9891"
,"to-cluster":"default","to-idc":"lf","x-ms-token":"vfLq1X_9QfRtlkT8HvKWLj2_qQq22ISgZ9L26kVcjKszk4XJUK4LTuiJkAHpJOwxTIfp6I0Xi2tdqVVPMEniXuhcZ6nAs0fnXZIhgUnvXTXlWt6WNQnXqNw=","cooki
e_ttwidinfo_webid":"7119735414450456103","x-janus-info":"rDbyyBfD-5ujgb_-Rm2AvHfE6XHmPkRGTpZk5vIe2rQXmYBeqJPNn5-CWYn_hWOD8HiRBLTA52Ec7mlGA-wzTsVmRgFBM5YujJwlHu8rJO-xRks7hiAZPGX9_7d
PARQUV_d4lyQeXaxY9yz_MuMPFz-ziJ-JU9WUAq2dnODwD7e24YYCQZ89r2O3IgzuF3emnCE1qFGFlwEUQnhiid8ttWenfJccISYM8ZjfHrqqz5FS4xvYVy5U58JrWWEZ_f5FkyAcT81A8Xb2IauMU3Y1AP8sLloOOMQI","set-cookie":
["msToken=vfLq1X_9QfRtlkT8HvKWLj2_qQq22ISgZ9L26kVcjKszk4XJUK4LTuiJkAHpJOwxTIfp6I0Xi2tdqVVPMEniXuhcZ6nAs0fnXZIhgUnvXTXlWt6WNQnXqNw=; expires=Thu, 20 Jun 2024 11:10:57 GMT; domain=do
uyin.com; path=/; secure; SameSite=None"],"strict-transport-security":"max-age=31536000; includeSubDomains; preload","access-control-allow-credentials":"true","server-timing":"inne
r; dur=1156, cdn-cache;desc=MISS,edge;dur=0,origin;dur=1207","x-tt-trace-host":"01f5a7f74fb1f6a9381bdfd3524d31f903fb2661dd81165567ee8841b0f493a95e97ae933aaf2e119127ed3fe917d68f1231
1bd9a07ee6257497b6f8c11d2797a3c757c5198c00f4d88e6a94558d76e4ae1144ec7aa9620815dc08830db7c0195e","x-tt-trace-tag":"id=03;cdn-cache=miss;type=dyn","x-tt-trace-id":"00-240613191057370
7A1B160EA8C199E6D-237EFF9838FEB7F4-00","via":"live4.cn6822[1207,0]","timing-allow-origin":"*","eagleid":"b6f7ecb417182770579434102e"}
523342
{"status_code":0,"aweme_list":null,"has_more":1,"cursor":10,"guide_search_words":[{"id":"6548652907695183112","word":"路人视角","type":"recom","query_id":"6581242608947844356","att
ached_text":null},{"id":"6585020614170400004","word":"马思唯","type":"recom","query_id":"6581242608947844356","attached_text":null},{"id":"6598250693897770253","word":"壁纸","type"
:"recom","query_id":"6581242608947844356","attached_text":null},{"id":"6537235052961469700","word":"手势舞","type":"recom","query_id":"6581242608947844356","attached_text":null},{"
id":"6543530651927188740","word":"方圆","type":"recom","query_id":"6581242608947844356","attached_text":null},{"id":"6818788051146282254","word":"一拍即合的我们","type":"recom","qu
ery_id":"6581242608947844356","attached_text":null},{"id":"6538978456762324227","word":"素颜","type":"recom","query_id":"6581242608947844356","attached_text":null},{"id":"652757201
8743743752","word":"虞书欣","type":"recom","query_id":"6581242608947844356","attached_text":null},{"id":"6543531834616059149","word":"仿妆","type":"recom","query_id":"6581242608947
844356","attached_text":null},{"id":"6537292146192438541","word":"跳舞","type":"recom","query_id":"6581242608947844356","attached_text":null},{"id":"6595888160872338695","word":"同
款","type":"recom","query_id":"6581242608947844356","attached_text":null},{"id":"6598867558164600071","word":"gq红毯","type":"recom","query_id":"6581242608947844356","attached_text
":null},{"id":"6537253792889443597","word":"综艺","type":"recom","query_id":"6581242608947844356","attached_text":null}],"extra":{"now":1718277059000,"logid":"202406131910573707A1B
160EA8C199E6D","fatal_item_ids":[],"search_request_id":""},"log_pb":{"impr_id":"202406131910573707A1B160EA8C199E6D"},"backtrace":"f8zSdzdPBhl57DL+Qz8rLw==","data":[{"type":1,"aweme
_info":{"aweme_id":"7377673797048012083","desc":"穿你想穿的,吃你想吃的\n#毕业了出去玩就这么穿","create_time":1717748546,"author":{"uid":"58878877918","nickname":"易梦玲","avatar_t

五、调试环境 


(图1 nodejs调用搜索接口返回数据)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/356104.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【自动驾驶】ROS小车系统

文章目录 小车组成轮式运动底盘的组成轮式运动底盘的分类轮式机器人的控制方式感知传感器ROS决策主控ROS介绍ROS的坐标系ROS的单位机器人电气连接变压模块运动底盘的电气连接ROS主控与传感器的电气连接ROS主控和STM32控制器两种控制器的功能运动底盘基本组成电池电机控制器与驱…

ServBay 下一代Web开发环境

ServBay是一个集成式、图形化的本地化Web开发环境。开发者通过ServBay几分钟就能部署一个本地化的开发环境。解决了Web开发者&#xff08;比如PHP、Nodejs&#xff09;、测试工程师、小型团队安装和维护开发测试环境的问题&#xff0c;同时可以快速的进行环境的升级以及维护。S…

五十三、openlayers官网示例Layer Spy解析——跟随鼠标透视望远镜效果、图层剪裁

官网demo地址&#xff1a; Layer Spy 这篇实现了鼠标跟随望远镜效果&#xff0c;鼠标移动时绘制一个圆形的剪裁区剪裁上层图层。 container.addEventListener("mousemove", function (event) {mousePosition map.getEventPixel(event);map.render();});container.a…

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 任务安排问题(200分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 📎在线评测链接 https://app5938.acapp.acwing.com.cn/contest/2/problem/OD…

力扣1793.好子数组的最大分数

力扣1793.好子数组的最大分数 对于每个数 求其左右两侧小于它高度的元素下标(单调栈) class Solution {public:int maximumScore(vector<int>& nums, int k) {int n nums.size();vector<int> left(n,-1);stack<int> st;for(int i0;i<n;i){while(!…

Qt做群控系统

群控系统顾名思义&#xff0c;一台设备控制多台机器。首先我们来创造下界面。我们通过QT UI设计界面。设计界面如下&#xff1a; 登录界面&#xff1a; 登录界面分为两种角色&#xff0c;一种是管理员&#xff0c;另一种是超级管理员。两种用户的主界面是不同的。通过选中记住…

LVS(Linux Virtual Server)集群,(1)NAT模式

Cluster&#xff1a;集群&#xff0c;为了解决某个特定问题将多台计算机组合起来形成的单个系统。 集群分为三种类型&#xff1a; LB(Load Balancing)&#xff0c;负载均衡&#xff0c;多个主机组成&#xff0c;每个主机只承担一部分访问请求 HA(High Availiablity)&#xf…

python pyautogui实现图片识别点击失败后重试

安装库 pip install Pillow pip install opencv-python confidence作用 confidence 参数是用于指定图像匹配的信度&#xff08;或置信度&#xff09;的&#xff0c;它表示图像匹配的准确程度。这个参数的值在 0 到 1 之间&#xff0c;数值越高表示匹配的要求越严格。 具体来…

L55--- 257.二叉树的所有路径(深搜)---Java版

1.题目描述 2.思路 &#xff08;1&#xff09;因为是求二叉树的所有路径 &#xff08;2&#xff09;然后是带固定格式的 所以我们要把每个节点的整数数值换成字符串数值 &#xff08;3&#xff09;首先先考虑根节点&#xff0c;也就是要满足节点不为空 返回递归的形式dfs(根节…

Qt坐标系统

目录 概述 渲染 逻辑表示 锯齿绘制 坐标转换 模拟时钟示例 Window-Viewport转换 概述 坐标系统由QPainter类控制。与QPaintDevice和QPaintEngine类一起&#xff0c;QPainter构成了Qt绘画系统的基础。QPainter用于执行绘制操作&#xff0c;QPaintDevice是一个二维空间的抽…

提升教学效率的全方位解决方案

在现代教育环境中&#xff0c;教学管理的复杂性与日俱增。如何高效管理教学活动、优化教师资源、提升教学质量&#xff0c;是每个教育机构面临的重要挑战。搭贝教务教学管理系统提供了一套全面的解决方案&#xff0c;涵盖了巡检、调课代课、生源登记、监考、外派、作业发布、听…

LabVIEW回热系统热经济性分析及故障诊断

开发了一种利用LabVIEW软件的电厂回热系统热经济性分析和故障诊断系统。该系统针对火电厂回热加热器进行优化&#xff0c;通过实时数据监控与分析&#xff0c;有效提高机组的经济性和安全性&#xff0c;同时降低能耗和维护成本。系统的实施大幅提升了火电厂运行的效率和可靠性&…

2024会展行业发展趋势预测

在当今这个数字化浪潮汹涌的时代&#xff0c;会展行业也迎来了自己的变革时刻。 根据《2023中国会展主办机构数字化调研报告》&#xff0c;我们可以清晰地看到几个显著的趋势&#xff1a; 首先&#xff0c;数字化转型已经不再是一道选择题&#xff0c;而是必答题。 超过90%的…

LabVIEW Windows与RT系统的比较与选择

LabVIEW是一种系统设计和开发环境&#xff0c;广泛应用于各类工程和科学应用中。LabVIEW Windows和LabVIEW RT&#xff08;Real-Time&#xff09;是LabVIEW的两个主要版本&#xff0c;分别适用于不同的应用场景。以下从多个角度详细分析两者的区别&#xff0c;并提供选择建议。…

【大模型驯化-Prompt】企业级大模型Prompt调试技巧与batch批量调用方法

【大模型驯化-Prompt】企业级大模型Prompt调试技巧 本次修炼方法请往下查看 &#x1f308; 欢迎莅临我的博客个人主页 &#x1f448;这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合&#xff0c;智慧小天地&#xff01; &#x1f387; 免费获取相关内容文档关注&#x…

网上预约就医取号系统

摘 要 近年来&#xff0c;随着信息技术的发展和普及&#xff0c;我国医疗信息产业快速发展&#xff0c;各大医院陆续推出自己的信息系统来实现医疗服务的现代化转型。不可否认&#xff0c;对一些大型三级医院来说&#xff0c;其信息服务质量还是广泛被大众所认可的。这就更需要…

@ModelAttribute

基础知识 1.ModelAttribute注解源码&#xff0c;从中可以知道&#xff0c;该注解可以标注在参数上和方法上 2.应用场景&#xff1a;先大致有个概念&#xff0c;可以用来存储项目根路径 3.介绍&#xff1a;ModelAttribute 是 Spring 框架中的一个注解&#xff0c;用于在 Spring …

Linux Centos 环境下搭建RocketMq集群(双主双从)

1、下载rocketmq的包 下载 | RocketMQ 2、配置环境变量 1、编辑环境变量文件&#xff1a;vim /etc/profile2、加入如下配置&#xff1a; #rocketmq 4.9.8 ROCKETMQ_HOME/home/rocketmq/rocketmq-4.9.8 export PATH${ROCKETMQ_HOME}/bin:${PATH}3、刷新配置&#xff1a;source…

修复kazam意外中断的视频文件

0. Problem 在用kazam录视频的过程中&#xff0c;PC意外重启了&#xff0c;然后kazam没有把文件自动转换成MP4&#xff0c;而是存为以下两个文件&#xff1a; kazam_xxxxx.movie kazam-xxxxx.movie.mux这两个文件一个0k&#xff0c;另一个是有size的&#xff0c;但是没办法直…

计算机组成原理 | 计算机系统概述

CPI:(Clockcycle Per Instruction)&#xff0c;指每条指令的时钟周期数。 时钟周期&#xff1a;对CPU来说&#xff0c;在一个时钟周期内&#xff0c;CPU仅完成一个最基本的动作。时钟脉冲是计算机的基本工作脉冲&#xff0c;控制着计算机的工作节奏。时钟周期 是一个时钟脉冲所…