Open MerlinCN opened 7 months ago
先贴一个链接,有关你出现的问题:https://github.com/orgs/nonebot/discussions/13 ,当然如果你找到了当我没说。
如果你按照那里的这么去做,其实无非只有一个影响:不能用 aiohttp 的代理。但是 这个模块也是支持 httpx 的,所以如果真的需要代理,你可以考虑使用 httpx 进行请求。
但是现在 httpx 又有一个问题:不支持 websocket,因此 LiveDanmaku
和 VideoOnlineMonitor
还是得用回 aiohttp
,这个时候你又不能用代理了。
所以……建议自行进行权衡。
最后贴张表:当你按照开头给的链接对这个问题进行处理后,模块对不同功能的支持情况:
无代理/有代理 | aiohttp | httpx |
---|---|---|
VideoOnlineMonitor (旧接口,模块内有新接口) & LiveDanmaku |
✅ / ❌ | ❌ / ❌ (httpx 本身便不支持 WebSocket) |
login.py |
❌ / ❌ (这部分本身便不支持异步) | ✅ / ✅ |
其他接口 | ✅ / ❌ | ✅ / ✅ |
环境:
python3.11
bilibili_api.__init__.py
中此处代码会导致一些默认使用
WindowsProactorEventLoopPolicy
的第三方库报错,如:nonebot
中_make_subprocess_transport
继承自WindowsProactorEventLoopPolicy