抖音直播间人气接口算法 抖音协议
Q44804487
于 2022-04-02 10:15:54 发布 6525
收藏 26
文章标签: python
版权
因为业务需要 最近研究了下抖音直播间接口
发现只要一直给一个接口发送心跳包就能保持这个用户的在线状态
有些团队用这个实现直播间刷虚假人气
上代码片段 有感兴趣的可以一起交流学习
def bullet_chat(self, room_id):
msToken = self.session.cookies.get('msToken', domain='live.douyin.com')
url = f"https://live.douyin.com/webcast/im/fetch/?aid=6383&live_id=1&device_platform=web&language=zh-CN&room_id={room_id}&resp_content_type=protobuf&version_code=9999&identity=audience&internal_ext={quote_plus(self.internal_ext)}&cursor={quote_plus(self.cursor)}&last_rtt={self.last_rtt}&did_rule=3&msToken={msToken}"
url = addXBogus(self.session.headers.get('user-agent'), url)
r = self.session.get(url, timeout=3)
r.encoding = 'utf-8'
return_data = r.text
# a, b = blackboxprotobuf.protobuf_to_json(r.content)
# aa = json.loads(a)
# self.internal_ext = aa['5']
self.internal_ext = f"internal_src{return_data.split('internal_src')[-1]}"
# self.cursor = aa['2']
self.cursor = self.internal_ext.split('next_cursor:')[-1].split('|')[0]
# print(f'self.internal_ext: {self.internal_ext}')
# print(f'self.cursor: {self.cursor}')
————————————————
版权声明:本文为CSDN博主「Q44804487」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Q44804487/article/details/123914102
于 2022-04-02 10:15:54 发布 6525
收藏 26
文章标签: python
版权
因为业务需要 最近研究了下抖音直播间接口
发现只要一直给一个接口发送心跳包就能保持这个用户的在线状态
有些团队用这个实现直播间刷虚假人气
上代码片段 有感兴趣的可以一起交流学习
def bullet_chat(self, room_id):
msToken = self.session.cookies.get('msToken', domain='live.douyin.com')
url = f"https://live.douyin.com/webcast/im/fetch/?aid=6383&live_id=1&device_platform=web&language=zh-CN&room_id={room_id}&resp_content_type=protobuf&version_code=9999&identity=audience&internal_ext={quote_plus(self.internal_ext)}&cursor={quote_plus(self.cursor)}&last_rtt={self.last_rtt}&did_rule=3&msToken={msToken}"
url = addXBogus(self.session.headers.get('user-agent'), url)
r = self.session.get(url, timeout=3)
r.encoding = 'utf-8'
return_data = r.text
# a, b = blackboxprotobuf.protobuf_to_json(r.content)
# aa = json.loads(a)
# self.internal_ext = aa['5']
self.internal_ext = f"internal_src{return_data.split('internal_src')[-1]}"
# self.cursor = aa['2']
self.cursor = self.internal_ext.split('next_cursor:')[-1].split('|')[0]
# print(f'self.internal_ext: {self.internal_ext}')
# print(f'self.cursor: {self.cursor}')
————————————————
版权声明:本文为CSDN博主「Q44804487」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Q44804487/article/details/123914102
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2020-04-24 C#爬虫使用代理刷文章浏览量
2020-04-24 c#批量抓取免费代理并验证有效性
2020-04-24 C# 代理HTTP请求
2020-04-24 c# 代理IP获取通用方法
2020-04-24 C#简单爬取数据(.NET使用HTML解析器NSoup和正则两种方式匹配数据)
2020-04-24 Thread、ThreadPool、Task、Parallel的基本用法、区别以及弊端