抖音直播间弹幕rpc学习

这篇具有很好参考价值的文章主要介绍了抖音直播间弹幕rpc学习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目标url

随便找个直播间即可。
https://live.douyin.com/198986091107

接口分析

首先并没有在xhr下找到对应的接口
抖音直播间弹幕rpc学习
因为采用了websocket来传输信息。切换到ws即可看到
抖音直播间弹幕rpc学习
消息下,可以看到16进制的数据在源源不断地增加。
抖音直播间弹幕rpc学习

那么我们只要找到反序列化后的数据,再发送到本地的socket服务,就可以直接拿到弹幕消息了。

定位的过程

首先点击发起程序,跟进最近调用的js文件。
抖音直播间弹幕rpc学习
格式化后搜索new websocket,因为使用js来创建socket服务必须要实例化websocket类。如下
抖音直播间弹幕rpc学习
接着大概将断点断在5549行处,可以发现,马上就触发断点了
抖音直播间弹幕rpc学习
我们来看一下这个代码,this.client就是websocket的一个实例,当接收到message就会触发blind这个函数。接着跟进。
抖音直播间弹幕rpc学习
这里r变量接收了反序列化后的数据,然后看看r的去向
抖音直播间弹幕rpc学习
可以看到后面会走emit这个方法,接着有个调试的技巧就是在经过的函数或者return的地方下个断点。
抖音直播间弹幕rpc学习
其实这里的r也能做为代码注入的地方,但是为了省力,需要继续跟一下。
抖音直播间弹幕rpc学习
继续调试
可以看到再反序列一次,已经拿到我们想要的弹幕消息了
抖音直播间弹幕rpc学习

js注入,rpc主动调用

可以使用chrome自带的overrides进行注入,如果浏览器崩溃,然后刷新依然失效的话,可以用fidder等工具来进行注入。

下面是注入代码和python启动websocket的代码

//代码注入
window.data  = i.toString();
!function(){
   var res = window.data ;
   if (window.flag){
          window.ws.send(JSON.stringify(res));
   }
   else{
          var ws = new WebSocket("ws://127.0.0.1:9999");
          window.ws  = ws;
          window.flag  =true;
          ws.open = function(evt){};
          ws.onmessage = function(evt){
              ws.send(JSON.stringify(res));
 }}
}();
# !/usr/bin/env python
# -*- coding: utf-8 -*-

# @author: yjp
# @software: PyCharm
# @file: main.py
# @time: 2022-08-08 16:49
import asyncio
# https://live.douyin.com/538509161829?cover_type=1&enter_from_merge=web_live&enter_method=web_card&game_name=%E7%BB%8F%E5%85%B8%E5%A4%A9%E9%BE%99%E5%85%AB%E9%83%A8&is_recommend=1&live_type=game&more_detail=all&request_id=20230101140342B8DB1AEE29D2135E5175&room_id=7183543025027648315&stream_type=horizontal&title_type=1&web_live_page=game_4627&web_live_tab=more

import websockets
import json

async def check_permit(websocket):
    send_text = '114514'
    await websocket.send(send_text)
    return True


async def recv_msg(websocket):
    while 1:
        recv_text = await websocket.recv()
        try:
            print(recv_text)
        except:
            with open('其他.txt','w',encoding='utf-8') as f:
                f.write(recv_text)


async def main_logic(websocket, path):
    await check_permit(websocket)
    await recv_msg(websocket)


start_server = websockets.serve(main_logic, '127.0.0.1', 9999)
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()

最终结果

抖音直播间弹幕rpc学习
抖音直播间弹幕rpc学习
这里由于gbk编码,print会出错,我把不能直接打印的文本存入了txt里
抖音直播间弹幕rpc学习文章来源地址https://www.toymoban.com/news/detail-421329.html

到了这里,关于抖音直播间弹幕rpc学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Websocket获取B站直播间弹幕教程——第二篇、解包/拆包

    教程一、Websocket获取B站直播间弹幕教程 — 哔哩哔哩直播开放平台 我们连接上B站Websocket成功后,要做两件事情: 第一、发送鉴权包。 第二、发送心跳包,每30秒一次,维持websocket连接。 这两个包不是直接发送过去,而是要创建 byte数组 ,将一些数据 按B站协议格式 用大端序

    2024年02月06日
    浏览(47)
  • 抖音手机实景无人直播间怎么搭建?

    手机无人直播 已成为用户直播和商家直播带货的一项热门技术趋势,为消费者提供了全新的观看体验。无人直播,顾名思义,即通过无人直播软件或数字人来进行无人直播。这一技术的广泛应用,不仅为短视频渠道带来了更丰富的玩法,也为各种领域的商户提供了有效的带货

    2024年02月06日
    浏览(41)
  • 在抖音直播间,项目被资本割韭菜

    VC们也开始直播了。 想象中高高在上、西装革履的投资人对着镜头吆喝项目直投与连麦加群,颇有些魔幻现实的影子。但如果有心,在抖音上,时常可以发现诸如创投机构、XX投资人的直播,其中不乏已然有知名度的部分主体,这一趋势,在今年正在迅速蔓延。 论及缘由,在

    2024年02月16日
    浏览(37)
  • 抖音直播VR全景3D立体元宇宙直播间搭建教程软件详细玩法教程

    标题:抖音直播VR全景3D立体元宇宙直播间搭建教程:详细玩法指南 简介: 本文将为您详细介绍抖音直播VR全景3D立体元宇宙直播间的搭建教程,并提供详细的玩法指南。通过了解的使用和相关软件的操作,帮助您在抖音直播平台上打造独特的虚拟现实直播体验。 第一

    2024年01月20日
    浏览(116)
  • Python抓取抖音直播间数据:技术探索与实践

    目录 一、引言 二、技术准备 三、分析抖音直播间网页结构 四、编写爬虫代码 五、处理反爬虫机制 六、数据清洗与存储 七、总结 随着互联网的快速发展,直播行业已成为当下的热门领域。抖音作为其中的佼佼者,吸引了大量的用户和主播。对于数据分析师、市场研究人员

    2024年04月15日
    浏览(43)
  • 直播必备抖音智能语音互动播报机器人 一键欢迎新人加入直播间软件教程

    标题:抖音智能语音互动播报机器人——直播必备,欢迎新人加入直播间 随着直播行业的发展,越来越多的主播开始利用抖音平台进行直播,而吸引观众参与直播成为了一项重要的任务。为了提高直播互动性和观众黏性,抖音智能语音互动播报机器人应运而生。本文将为您介

    2024年02月03日
    浏览(178)
  • vue - 实现类似 ”视频和直播间“ 的文字弹幕飘过效果功能,支持Nuxt项目!组件源码及详细的使用示例(可自己定义弹幕样式、修改滚动速度、显示隐藏弹幕、鼠标移入悬停与点击悬停等)弹幕功能插件源码

    在 Nuxt.js 或 Vue.js 项目中,制作一个类似视频弹幕、直播间发言飘过弹幕效果组件,丝滑运行兼容性完美无bug。 具体功能请看下图介绍,还有很多没有列举,基本上如果你需要这种弹幕,肯定能满足你。

    2023年04月22日
    浏览(51)
  • 直播间场控机器人,暖场滚屏喊话神器,支持抖音快手视频号脚本教程

    标题:直播间场控机器人:提升直播互动与用户体验的利器 在当下的互联网时代,直播已经成为了一种流行的娱乐形式,而直播间场控机器人则是提升直播互动与用户体验的重要工具。本文将介绍直播间场控机器人的功能和优势,以及如何使用抖音、快手等平台进行直播,并

    2024年02月06日
    浏览(162)
  • vLive虚拟直播喊话文旅直播间

    vLive虚拟直播喊话文旅直播间 vLive虚拟直播喊话文旅直播间

    2024年02月01日
    浏览(31)
  • UDP实现聊天直播间 chatroom

    1.memcmp() 函数 memcmp() 函数用于比较两个内存区域前 n 个字节的内容。 它接受三个参数: •const void *s1:指向第一个内存区域的指针。 •const void *s2:指向第二个内存区域的指针。 •size_t n:要比较的字节数。 返回值: memcmp() 函数返回一个整数值,表示两个内存区域内容的比

    2024年04月11日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包