斗鱼弹幕 PHP 版本
GitHub 地址 https://github.com/wjhtime
之前写过 python 获取斗鱼的弹幕 传送门 https://github.com/wjhtime/douyu_danmu_python , 突发奇想, 想要用 PHP 来实现. 弹幕获取实现起来很简单, 用 swoole 很容易做到了, 后期也做了一些命令行格式的优化
使用了 swoole 来连接 socket, 取代了 PHP 的 socket 的函数, 使用起来更加方便灵活, swoole 文档 https://wiki.swoole.com/wiki/page/1.html
默认获取的英雄联盟的弹幕, 如果想要看其他房间的弹幕, 只需执行命令 PHP cli.PHP danmu [room id] 即可
找个人气旺的房间, 一起来欣赏弹幕吧!
Requirements
swoole 扩展
- symfony/console
- guzzlehttp/guzzle
- jaeger/querylist
- Quick Start
- 1. pecl install swoole
省略配置过程, 具体参照 swoole 文档...
- Git clone Git@GitHub.com:wjhtime/douyu_danmu_php.Git
- Composer install -vvv (安装过程可能较长, 通过 - vvv 查看输出)
- PHP cli.PHP douyu:search <keywords>
- PHP cli.PHP danmu <room_id=288016>
或者 PHP danmu.PHP
Feature
使用 swoole 获取弹幕数据
使用 symfony/console 包, 内容输出更加美观
消息处理, 弹幕消息, 赠送礼物, 分享房间等类型均做处理
Screenshots
Illustrate
To Do List
弹幕信息分类不够清晰, 未知 type 型数据过多
来源: https://juejin.im/post/5c1099b85188251ba9058f83