哔哩哔哩直播弹幕点播。python脚本,通过bilibili-api获取直播间弹幕,根据弹幕指令控制kplayerRPC API接口播放,点播视频。
受限于kplayer环境要求,仅支持Linux环境并需要满足x86_64(amd64)与aarch64(arm64)CPU架构的硬件环境上运行.
- 克隆本项目
git clone https://github.com/Airmole/bilive-kplayer.git
项目目录下的kplayer文件可更新替换适合您机器的kplayer发行版本
yt-dlp 用于下载用户点播视频,也可根据情况更新替换最新yt-dlp发行版本
- 配置kplayer config
# 复制kplayer配置文件,并编辑配置参数
cp ./config.json.example ./config.json
- 修改配置python脚本
打开编辑 main.py
修改python配置参数
# 仅管理员可弹幕指令控制
adminer_control = False
# 管理员权限哔哩哔哩账号昵称
adminer_nickname = 'Airmole'
# 直播间号
room_id = 22783053
# kplayer token参数见kplayer config配置
kplayer_token = 'bilive-kplayer'
# kplayer RPC HTTP API服务主机及端口号
kplayer_host = '127.0.0.1:4156'
# 点播视频存放目录
video_save_path = './video'
# playlist视频存放路径
playlist_save_path = './video'
# 超时视频删除时间(单位秒)
timeout_delete = 60 * 60 * 2
# 默认播放列表文件
playlist_file = './playlist.txt'
# 点播视频大小限制
bilivideo_sizelimit = '30m'
# 弹幕发送输出提示信息
danmaku_print = True
# 记录点播日志
save_order_log = True
# 弹幕回复所需cookie Credential(获取方式:https://nemo2011.github.io/bilibili-api/#/get-credential)
credential = Credential(sessdata="你的 SESSDATA", bili_jct="你的 bili_jct", buvid3="你的 buvid3", dedeuserid="你的 DedeUserID")
务必修改直播间号,否则监听的弹幕指令是我直播间的弹幕
- 安装依赖
pip3 install -r requirements.txt
- 启动kplayer
./kplayer play start -d
- 启动python监听控制脚本
python3 ./main.py
finished!完成启动,去你直播间发送弹幕【查看正在播放】试试看?
弹幕指令配置在 main.py
第36行,可以根据自己需要添加,修改配置。
# 弹幕命令关键字设置
command_show_unplay_text = '查看未播放'
command_show_playing = '查看正在播放'
command_show_next_text = '查看下一条播放信息'
command_jump_time_text = '跳转时间到' # 例如:跳转时间到30s
command_play_next_text = '播放下一条'
command_order_video_text = '点播视频' # 例如:点播视频BV1Xt411F7tn
command_order_music_text = '点歌' # 例如: 点歌 芒种 音阙诗听
command_show_duration_text = '查看播了多久了'
- 哔哩哔哩网页版在自己直播间,按下键盘F12,打开开发工具,发送一条弹幕
-
右键send,复制->复制为curl
-
粘贴到https://curlconverter.com/python/的curl command输入框,下方会自动识别出现cookies
- 将cookies复制,并粘贴到
main.py
中cookie的位置,改为cookie
注意,复制的是cookies = { ,复制到
main.py
中之后记得要改成 cookie = {