新版a_bogus算法分析以及成品展示调用

2024-04-24 05:36

本文主要是介绍新版a_bogus算法分析以及成品展示调用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

新版a_bogus算法的过程,仅学习参考,如有涉及侵权联系本人删除

最近看到这个参数花了点时间研究了一下 流程和X-Bogus差不多,通过对这段字符串概是对数据、ua、时间戳、浏览器的几个指纹进行计算,长度168位

下面是实现效果以及测试方法:

具体调用方法:

import requestsheaders = {"accept": "application/json, text/plain, */*","accept-language": "zh-CN,zh;q=0.9","priority": "u=1, i","referer": "https://www.douyin.com/user/MS4wLjABAAAAEpmH344CkCw2M58T33Q8TuFpdvJsOyaZcbWxAMc6H03wOVFf1Ow4mPP94TDUS4Us","sec-ch-ua": "\"Chromium\";v=\"124\", \"Google Chrome\";v=\"124\", \"Not-A.Brand\";v=\"99\"","sec-ch-ua-mobile": "?0","sec-ch-ua-platform": "\"Windows\"","sec-fetch-dest": "empty","sec-fetch-mode": "cors","sec-fetch-site": "same-origin","user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
}
cookies = {"ttwid": "1%7Cmad1f-1QOMRDrZL7FeBuk4X701QZZmU13X-LreVPZ_4%7C1713410299%7C8571e30cd5676e1d7f6aa2837d20ded6aeba89edc04aca2de29d30147c8b3ccb",}
# 用户作品列表接口
douyin_url = "https://www.douyin.com/aweme/v1/web/aweme/post/"
# params为请求某音的参数
params = {"device_platform": "webapp","aid": "6383","channel": "channel_pc_web","sec_user_id": "MS4wLjABAAAAEpmH344CkCw2M58T33Q8TuFpdvJsOyaZcbWxAMc6H03wOVFf1Ow4mPP94TDUS4Us","max_cursor": "0","locate_query": "false","show_live_replay_strategy": "1","need_time_list": "1","time_list_query": "0","whale_cut_token": "","cut_version": "1","count": "18","publish_video_strategy_type": "2","pc_client_type": "1","version_code": "290100","version_name": "29.1.0","cookie_enabled": "true","screen_width": "1536","screen_height": "864","browser_language": "zh-CN","browser_platform": "Win32","browser_name": "Chrome","browser_version": "124.0.0.0","browser_online": "true","engine_name": "Blink","engine_version": "124.0.0.0","os_name": "Windows","os_version": "10","cpu_core_num": "16","device_memory": "8","platform": "PC","downlink": "1.4","effective_type": "3g","round_trip_time": "600","webid": "7359041139830294068","msToken": "GRQrh9I42TzLMrowI1XorMyQl-eZ8PQEwRRspobtVRB5hH79C9WAFpgd_QvDF31Fi5c5gmN9Eelg_3LUfUavFkd7RPjCmGhxwlSiNRZTFimzLVeX_hcYyccy18CtRQ==",# "a_bogus": "OjRhQD06di6sDD6h5IKLfY3q65q3Y07Q0trE/D2fYdfPGg39HMPP9exLA2svB2YjLT/AIeLjy4heO3aMiOInA3v6HSRKl2Ck-g00t-Pg5o4j5Hv9uyR0rtRF4kt4FeeM5iQ3xOssy7ccKSRZAIqe-wHvPjojx2f39gcK"}
data = {'params': params,'ua': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36","user_token": 'cs1bbb6ac6695f93e0fd3c8b5fc8ff7f55'
}
# 请求生成a_bogus的接口
ab_url = "http://82.156.83.156:5000/douyin_monitor/get_douyin_ab/"  # 请求生产a_bogus的接口
response = requests.post(ab_url, json=data).json()
#
# 把生成的a_bogus加入到params中
print("生成参数成功a_bogus:", response['data'])
params["a_bogus"] = response['data']# 请求抖音用户列表接口
response_douyin = requests.get(douyin_url, headers=headers, cookies=cookies, params=params)# 解析请求出来的数据
data_list = response_douyin.json()
for douyin_data in data_list.get("aweme_list"):product_id = douyin_data.get("aweme_id")desc = douyin_data.get("desc")print(product_id, desc)

这篇关于新版a_bogus算法分析以及成品展示调用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/930884

相关文章

Java调用Python的四种方法小结

《Java调用Python的四种方法小结》在现代开发中,结合不同编程语言的优势往往能达到事半功倍的效果,本文将详细介绍四种在Java中调用Python的方法,并推荐一种最常用且实用的方法,希望对大家有... 目录一、在Java类中直接执行python语句二、在Java中直接调用Python脚本三、使用Run

Python如何调用指定路径的模块

《Python如何调用指定路径的模块》要在Python中调用指定路径的模块,可以使用sys.path.append,importlib.util.spec_from_file_location和exe... 目录一、sys.path.append() 方法1. 方法简介2. 使用示例3. 注意事项二、imp

慢sql提前分析预警和动态sql替换-Mybatis-SQL

《慢sql提前分析预警和动态sql替换-Mybatis-SQL》为防止慢SQL问题而开发的MyBatis组件,该组件能够在开发、测试阶段自动分析SQL语句,并在出现慢SQL问题时通过Ducc配置实现动... 目录背景解决思路开源方案调研设计方案详细设计使用方法1、引入依赖jar包2、配置组件XML3、核心配

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

C#如何调用C++库

《C#如何调用C++库》:本文主要介绍C#如何调用C++库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录方法一:使用P/Invoke1. 导出C++函数2. 定义P/Invoke签名3. 调用C++函数方法二:使用C++/CLI作为桥接1. 创建C++/CL

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

openCV中KNN算法的实现

《openCV中KNN算法的实现》KNN算法是一种简单且常用的分类算法,本文主要介绍了openCV中KNN算法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录KNN算法流程使用OpenCV实现KNNOpenCV 是一个开源的跨平台计算机视觉库,它提供了各

Python 迭代器和生成器概念及场景分析

《Python迭代器和生成器概念及场景分析》yield是Python中实现惰性计算和协程的核心工具,结合send()、throw()、close()等方法,能够构建高效、灵活的数据流和控制流模型,这... 目录迭代器的介绍自定义迭代器省略的迭代器生产器的介绍yield的普通用法yield的高级用法yidle