废话不多,先上演示代码,python2与python3及全平台支持。
源代码见这里,欢迎 Star 与 Fork。
import time, sysfrom danmu import DanMuClientdef pp(msg): print(msg.encode(sys.stdin.encoding, 'ignore'). decode(sys.stdin.encoding)) dmc = DanMuClient('http://www.douyu.com/lslalala')if not dmc.isValid(): print('Url not valid')@dmc.danmudef danmu_fn(msg): pp('[%s] %s' % (msg['NickName'], msg['Content']))@dmc.giftdef gift_fn(msg): pp('[%s] sent a gift!' % content['NickName'])@dmc.otherdef other_fn(msg): pp('Other message received') dmc.start(blockThread = True)
danmu 是一个开源的直播平台弹幕接口,使用他没什么基础的你也可以轻松的操作各平台弹幕。
使用不到三十行代码,你就可以使用Python基于弹幕进一步开发。
支持斗鱼、熊猫、战旗、全民多平台弹幕。
支持各版本Python,无平台依赖,方便各类开发者、爱好者使用。
一次开启,主播上线自动连接,下线后上线自动重连。
经过深度优化,几乎不漏过任何一条弹幕;使用抽象构架,方便修改与开发。
Installation
可以通过本命令安装 danmu:
pip install danmu
Screenshot
Documents
你可以在这里获取使用帮助。
Advanced uses
设置默认的消息处理方式
消息被分为三种类型注册:danmu, gift, other
分别对应:普通弹幕,礼物消息,其他消息
如果某种类型没有注册过,将会使用默认方法,默认方法的注册方式如下:
from danmu import DanMuClient dmc = DanMuClient('http://www.douyu.com/lslalala')@dmc.defaultdef default_fn(msg): pp('[%s] %s' % (msg['NickName'], msg['Content']))
取消已经注册过的方法
通过以下方式可以取消某一种类型的注册。
from danmu import DanMuClient dmc = DanMuClient('http://www.douyu.com/lslalala') dmc.default(None) dmc.gift(None)
Comments
如果有什么问题或者建议都可以在这个Issue和我讨论
或者也可以在gitter上交流:![gitter][gitter_picture]
作者:LittleCoder
链接:https://www.jianshu.com/p/e57a3cfc7f06
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦