python利用danmu实时获取斗鱼等直播网站字幕

danmu 是一个开源的直播平台弹幕接口

用python    pip install danmu    

# -*- coding: utf-8 -*-

import time, sys

from danmu import DanMuClient

import pymongo

client = pymongo.MongoClient(host='localhost', port=27017)
db = client['douyu']
coll = db['content']


def pp(msg):
    print(msg.encode(sys.stdin.encoding, 'ignore').
          decode(sys.stdin.encoding))

# https://www.douyu.com/***** 为斗鱼直播房间地址
dmc = DanMuClient('https://www.douyu.com/*****')
if not dmc.isValid(): print('Url not valid')


@dmc.danmu
def danmu_fn(msg):
    content = {}
    content[msg['NickName']] = msg['Content']
    # content = '[%s] %s' % (msg['NickName'], msg['Content'])
    # content =  content.encode(sys.stdin.encoding, 'ignore').decode(sys.stdin.encoding)
    # 保存到mongodb
    coll.insert(content)


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


@dmc.other
def other_fn(msg):
    pp('Other message received')


dmc.start(blockThread=True)

猜你喜欢

转载自blog.csdn.net/Gu_zhi/article/details/86524627
今日推荐