2018-05-13 21:57:36 +08:00
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
|
|
2019-02-20 00:25:14 +08:00
|
|
|
|
import asyncio
|
2018-06-03 14:06:00 +08:00
|
|
|
|
|
2019-02-19 23:15:00 +08:00
|
|
|
|
from blivedm import BLiveClient
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MyBLiveClient(BLiveClient):
|
|
|
|
|
|
|
|
|
|
async def _on_get_popularity(self, popularity):
|
|
|
|
|
print('当前人气值:', popularity)
|
|
|
|
|
|
|
|
|
|
async def _on_get_danmaku(self, content, user_name):
|
|
|
|
|
print(user_name, '说:', content)
|
|
|
|
|
|
|
|
|
|
|
2019-02-20 14:12:11 +08:00
|
|
|
|
async def async_main():
|
2019-02-20 00:25:14 +08:00
|
|
|
|
# 139是黑桐谷歌的直播间
|
2019-02-19 23:15:00 +08:00
|
|
|
|
# 如果SSL验证失败就把第二个参数设为False
|
|
|
|
|
client = MyBLiveClient(139, True)
|
2019-02-20 14:12:11 +08:00
|
|
|
|
future = client.run()
|
|
|
|
|
try:
|
|
|
|
|
# 5秒后停止,测试用
|
|
|
|
|
# await asyncio.sleep(5)
|
|
|
|
|
# future.cancel()
|
|
|
|
|
|
|
|
|
|
await future
|
|
|
|
|
finally:
|
|
|
|
|
await client.close()
|
2019-02-19 23:15:00 +08:00
|
|
|
|
|
|
|
|
|
|
2019-02-20 14:12:11 +08:00
|
|
|
|
def main():
|
|
|
|
|
loop = asyncio.get_event_loop()
|
2019-02-19 23:15:00 +08:00
|
|
|
|
try:
|
2019-02-20 14:12:11 +08:00
|
|
|
|
loop.run_until_complete(async_main())
|
2019-02-19 23:15:00 +08:00
|
|
|
|
finally:
|
|
|
|
|
loop.close()
|
2018-05-13 21:57:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
|
main()
|