bruce3x / DouyuCrawler

[Deprecated]一个Java程序,用于抓取斗鱼弹幕。
Apache License 2.0
114 stars 44 forks source link

人气心跳包 #4

Closed murundong closed 6 years ago

murundong commented 6 years ago

你好,大神,请收下我的膝盖~ 最近在搞人气心跳包的协议,但是不能确定心跳包的地址 另外也不太确定他在线的算法,是不是通过心跳包 另外不知道大神有没有什么分析的工具,以及如何分析可以推荐一下 再次收下我的膝盖,(•̀⌄•́) 膜拜~(•̀⌄•́)

bruce3x commented 6 years ago

斗鱼已经开放了他们的 弹幕协议第三方平台 API,可以参考。

具体人气值,可以轮询 API 获取: http://open.douyucdn.cn/api/RoomApi/room/{room_id}

例如 http://open.douyucdn.cn/api/RoomApi/room/67373

murundong commented 6 years ago

额,谢谢大神的回复~ 实际上我是想找到心跳包服务器的ip,以及发送心跳包数据给服务器,模拟在线人气,公开的api可能不太够用,不知道有没有方式可以抓到心跳服务器的地址,以及发送的数据~ (•̀⌄•́)

bruce3x commented 6 years ago

我认为,心跳包只是用来确认客户端与服务端是否断连。一般服务器并不会通过心跳包来确定客户端数量,即人气数,通常会通过真实连接数来确定。

murundong commented 6 years ago

对的,所以理论上,连接到心跳服务器,并且定时发送数据,服务器就认为用户在线, 因此只需要通过不同ip,或者不同用户来访问心跳服务器,就可以达到刷在线人数的目的, 然而现在就是不太好抓他的心跳服务器地址,而且测试发现通过wareshark抓到的跳服务器地址都不太一样,所以不知道有没有什么方法能够拿到每次的心跳地址,以及发送的数据格式

bruce3x commented 6 years ago

可以考虑去逆向一下斗鱼的代码。

murundong commented 6 years ago

๑乛◡乛๑ 这有点困难啊……

murundong commented 6 years ago

不知道大神对具体的逆向步骤有什么建议!?

bruce3x commented 6 years ago

没什么建议诶,没做过这方面的内容。:(