有了danmu,二十行代码轻松愉快对弹幕进行二次开发

废话不多,先上演示代码,py2与py3及全平台支持。

源代码见这里,欢迎 Star 与 Fork。

import time, sys

from danmu import DanMuClient

def 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.danmu
def danmu_fn(msg):
    pp('[%s] %s' % (msg['NickName'], msg['Content']))

@dmc.gift
def gift_fn(msg):
    pp('[%s] sent a gift!' % content['NickName'])

@dmc.other
def 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.default
def 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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值