zbcb 发表于 2024-9-27 15:41:20

基于E4A编写抖音wss直播间弹幕礼物获取,Signature计算

本帖最后由 zbcb 于 2024-9-27 16:06 编辑

   前不久因为项目开发需要获取抖音直播间弹幕信息(礼物、点赞、关注、进入直播间、分享直播间),现有的获取方式一般有两种:
   1.第一种直接在浏览器里面加载直播间网页,然后通过清明_html解析类库通解析网页控件类的方式来截取弹幕信息,这截取方式论坛上有人已经发出来过(付费),我自己也曾使用过这种方式来尝试截取弹幕,的确可以截取到。但是这种方式非常严重的问题:漏弹幕、漏礼物信息、非常明显。不合适在生产环境里面使用。所以这个方式就丢弃了
   2.第二种方式走抖音直播间协议,网页上分析协议可以看出是WebSocket wss连接的方式,这种方式不会出现漏弹幕、漏信息的问题,万人直播间也不会出问题。但是走协议的形式,就避免不了弹幕解析、解压缩、心跳回发、wss链接Signature值等计算了....整个过程还是很复杂的。
   
   遇到问题先在如意论坛尝试搜索,根本搜索不到这方面的内容,在E4A一些群里面问也基本没人回应,遇到问题依靠自己比较靠谱,最后耗时20来天,成功实现了E4A走协议的方式获取直播间弹幕信息,写了网页版的和E4A版本的。


   比较坑的是创建wss连接的时候,因为协议参数不正确,无法升级连接,反而把wss降级成为https连接,死活连接不上。跑了好几个群,问人,也没人知道怎么回是,后面才发现是E4A浏览框组件有问题(由于没有使用wss库,我直接使用浏览框加载html,创建websocket连接的),后面重封装了浏览框才得以解决,加上创建wss连接,必须携带cookie值(ttwid)。


   wss直播间弹幕链接通过计算的方式来获得,比较麻烦的是Signature值,没有值也是没法连接上弹幕的,这个值需要使用room_id和use_id来计算获得,{:4_89:} 最后封装成计算类库,输入房间号,计算出wss链接,一步到位。


目前已经支持:
   一、输入房间号/抖音号/直播间链接,直接获取弹幕。
   二、支持wss断线重连,自动判断房间号是否正在直播,直播则重连弹幕。
   三、获取送礼物名称、礼物数量、获取点赞、用户等级、获取关注、获取分享直播间。

   (注:走的是wss解析协议路线,不是截取网页信息,万人直播间弹幕获取无压力。)
E4A版本演示:
https://www.mainurl.cn/png/1.png
https://www.mainurl.cn/png/2.png

网页演示:
https://www.mainurl.cn/png/4.png

有需要的联系,此源码不免费提供。
在最后分享一个简易的TTS语音合成类库,直接调用android 自带的 TextToSpeech 进行合成,本地化语音合成,没有用迅飞、百度、腾讯的语音合成,这些都是收费的,免费的次数有限,不适合用于直播间信息播报。 如果嫌弃自己手机自带的TTS合成引擎声音不好听,可以去安装MultTTS APP,替换手机自带的引擎、替换语音包。

免费TTS语音合成类库在附件




zbcb 发表于 2024-9-27 15:42:43

QQ:3497893153 有问题留言

SZCZAERD 发表于 2024-9-27 15:56:15

本帖最后由 SZCZAERD 于 2024-9-28 22:40 编辑


https://www.eyyba.com/data/attachment/forum/202409/28/221204dsqugeujkhekk2kh.jpg

https://www.eyyba.com/data/attachment/forum/202403/14/101921fthvqkq4f6b2rhqh.jpg

zbcb 发表于 2024-9-27 16:01:20

SZCZAERD 发表于 2024-9-27 15:56


找个劳坐吧

lishihai 发表于 2024-9-27 16:26:29

SZCZAERD 发表于 2024-9-27 15:56


色心收一下
还能活一年

dodowap 发表于 2024-9-27 17:18:12

那不是可以做抖音直播辅助了

zbcb 发表于 2024-9-27 17:20:30

dodowap 发表于 2024-9-27 17:18
那不是可以做抖音直播辅助了

实际上已经做这一类APP程序了{:4_108:}

lson 发表于 2024-9-27 20:23:52

zbcb 发表于 2024-9-27 17:20
实际上已经做这一类APP程序了

免费TTS语音合成类库在附件

only 发表于 2024-9-27 21:33:45

TTS语音合成类库,合成音频怎么调用啊,后面是两个对象???

zbcb 发表于 2024-9-27 22:26:00

only 发表于 2024-9-27 21:33
TTS语音合成类库,合成音频怎么调用啊,后面是两个对象???

都是浮点数,你两个参数都填 1.0就行,一个是音调、一个语速
页: [1] 2 3
查看完整版本: 基于E4A编写抖音wss直播间弹幕礼物获取,Signature计算