[Java记录]实时抓取斗鱼弹幕

[Java记录]实时抓取斗鱼弹幕

// 关键依赖 WebSocket客户端

org.java-websocket

Java-WebSocket

1.5.1

import org.java_websocket.client.WebSocketClient;

import org.java_websocket.handshake.ServerHandshake;

import java.io.ByteArrayOutputStream;

import java.io.IOException;

import java.net.URI;

import java.nio.ByteBuffer;

import java.nio.charset.StandardCharsets;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

/**

* 抓取斗鱼弹幕

*

* @author wind

* @date @s_2020/9/8

*/

public class DouYuBarrage {

/**

* wss://danmuproxy.douyu.com:8501/

* wss://danmuproxy.douyu.com:8502/

* wss://danmuproxy.douyu.com:8503/

* wss://danmuproxy.douyu.com:8504/

*/

private static final String BARRAGE_SERVER = "wss://danmuproxy.douyu.com:8501/";

private static final Pattern CONTENT_PATTERN = Pattern.compile("[email protected]=chatmsg.*?/[email protected]=(.*?)/[email protected]=(.*?)/[email protected]=(.*?)/.*?/[email protected]=(.*?)/");

public static void main(String[] args) throws Exception {

connect("99999");

}

/**

* 连接斗鱼弹幕服务器

*

* @author wind

* @date @s_2020/9/8

*/

public static void connect(String roomId) throws Exception {

new WebSocketClient(new URI(BARRAGE_SERVER), new Draft_6455()) {

@Override

public void onOpen(ServerHandshake serverHandshake) {

System.out.println("已连接");

this.send(login(roomId));

this.send(joinGroup(roomId));

new Thread(() -> {

while (true) {

this.send(keepLive());

System.err.println("发送心跳");

try {

Thread.sleep(40000);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}).start();

}

@Override

public void onMessage(String s) {

}

@Override

public void onMessage(ByteBuffer bytes) {

String result = new String(bytes.array(), StandardCharsets.UTF_8);

// 原数据

//System.out.println(result);

// 正则解析需要的数据并打印

analyzeAndPrintBarrage(result);

[Java记录]实时抓取斗鱼弹幕相关教程

java 实时弹幕_[Java记录]实时抓取斗鱼弹幕相关推荐

  1. 通过websocket抓取斗鱼弹幕和礼物消息

    1.斗鱼弹幕协议 到斗鱼官方开放平台看斗鱼通讯协议,网址"斗鱼开放平台",登录后可查看 所以根据斗鱼协议做编码函数: 1 def msg_encode(msg):2 #消息以 \0 ...

  2. python爬虫----简单的抓取斗鱼弹幕

    近几年来直播越来越火,看直播也成为了人们生活的娱乐项目 个人也是比较喜欢看直播,看着主播的搞笑的操作和弹幕不时会开怀大笑. 于是就想能不能把弹幕抓取下来,带着这个问题我就点开了一个直播间.按照以前学过 ...

  3. python爬斗鱼直播_Python爬虫:利用API实时爬取斗鱼弹幕

    原标题:Python爬虫:利用API实时爬取斗鱼弹幕 这些天一直想做一个斗鱼爬取弹幕,但是一直考试时间不够,而且这个斗鱼的api接口虽然开放了但是我在github上没有找到可以完美实现连接.我看了好多 ...

  4. python 模拟浏览器selenium_Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例...

    本文实例讲述了Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息.分享给大家供大家参考,具体如下: import time from multiprocessing import Poo ...

  5. python采集直播间数据_Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例...

    本文实例讲述了Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息.分享给大家供大家参考,具体如下: import time from multiprocessing import Poo ...

  6. selenium抓取斗鱼直播平台数据

    https://www.cnblogs.com/xinyangsdut/p/7617691.html 程序说明: 抓取斗鱼直播平台的直播房间号及其观众人数,最后统计出某一时刻的总直播人数和总观众人数. ...

  7. python抓取直播源 并更新_Python爬虫实例(二)使用selenium抓取斗鱼直播平台数据...

    程序说明:抓取斗鱼直播平台的直播房间号及其观众人数,最后统计出某一时刻的总直播人数和总观众人数. 过程分析: 进入平台首页,来到页面底部点击下一页,发现url地址没有发生变化,这样的话再使用urlli ...

  8. python抓取斗鱼的主播及热度

    Python抓取斗鱼主播及热度 刚接触python,想用python爬取下斗鱼的主播及其热度,下面是一个小demo 具体代码如下: from urllib import request from io ...

  9. 使用seleniumphantomjs+bs4抓取斗鱼直播房间信息

    使用selenium&phantomjs+bs4抓取斗鱼直播房间信息 # -*- coding:utf-8 -*-from selenium import webdriver from bs4 ...

  10. java jsoup爬动态网页_使用Jsoup+HtmlUnit抓取动态网页数据

    最后更新日期为2018.1.3 只为自己留个记录 待添加功能: 1.获取历史全部消息 2.爬取大于10条数据 3.自定义抓取公众号信息 package cc.buckler.test; import ...

最新文章

  1. 从2018年12月起陆续将博客搬至博客园(cnblogs)
  2. Nacos源码服务发现
  3. SUSE梁胜:程序员涨薪飞快,做开源贡献者没有意义
  4. [算法]海量数据问题之一
  5. Data Lake Analytics,大数据的ETL神器! 1
  6. 大数据平台建设实施方案
  7. Android文件的读写
  8. html 滑动条 实时计算,滑动条:拖动滑块改变进度
  9. 通过游戏编程学Python(番外篇)— 乱序成语、猜单词
  10. 页面加载性能之如何测试打开速度
  11. QQ号被盗了申诉回来马上又被盗了怎么办
  12. vs2015 linux开发 界面设计,Microsoft Office开发工具 Visual Studio 2015
  13. 红蓝出屏3D图片,请使用红蓝眼镜观看
  14. 安卓使用POI读取及修改Word文档(.doc格式)
  15. 鼠标指针在微信界面消失怎么办?
  16. 这些低代码平台,你是否知悉?
  17. 微擎支付返回商户单号_微信小程序支付流程
  18. CSS学习笔记之学成在线项目(下) 3.3
  19. Modeling-Relational-Data-with-Graph-Convolutional-Networks-阅读笔记
  20. 张钹院士:迈向第三代人工智能 思维导图

热门文章

  1. 2022年11月编程语言流行度排名
  2. 论文研究结论怎么写?
  3. 做管理,“重人情”还是“重制度”?
  4. csgo服务器搭建 linux,Centos 搭建 CSGO KZ 服务器
  5. google谷歌广告投放被拒登 提示有恶意垃圾软件
  6. 嵌入式linux机械臂,一款基于ARM嵌入式的机械臂的设计与实现
  7. php temp 删除,c盘temp文件夹可以删除吗
  8. WP短代码实现“chat”文章聊天形式 文章也能活跃起来
  9. 服务器vmware私有云,方案建议-使用VMware架构搭建自己的私有云.pptx
  10. 1. 如何创建python环境