yulinfeng000/blive

get_blive_room_info使用同步请求导致阻塞过长时间

Closed this issue · 6 comments

当用户保证输入是real_room_id的时候,能否提供一个选项跳过get_blive_room_info,每新建一个对象都要走一次网络层,在我本地的机子上大概需要0.2s时间才能init完Bliver对象,我的主播列表创建完毕需要大概43s的时间 实在是有点慢

没想到你有这么多监听,我可以改成异步进行请求。

没想到你有这么多监听,我可以改成异步进行请求。

我还是希望能有额外的选项来控制不走get_blive_room_info,B站有令牌桶算法,如果因为API走的太快太多被封禁 导致API返回code -412更加得不偿失,同时,有这么大的主播列表,一次性获取所有主播的real_room_id并存储下来的收益是显著的
突然想起来uname也是走get_blive_room_info拿的 我不好说了

这种监听工程不符合本项目的初衷,我能做的妥协只能是改为异步请求,其他的想法你可以fork仓库自行解决

了解了

已经改成异步请求直播间ws地址和房间信息了,请pip install --upgrade blive 升级包版本或者指定版本号安装pip install blive==0.2.4

经过测试原来阻塞约43s,现在为约0.2s 性能提升2000%