From d2aae0103d30b76a78e921d34465f9aecd8ce5d8 Mon Sep 17 00:00:00 2001 From: HibiKier <775757368@qq.com> Date: Sat, 16 Jul 2022 05:48:00 +0800 Subject: [PATCH] fix b23.tv bug --- README.md | 1 + plugins/parse_bilibili_json.py | 23 +++++++++++------------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index fc93eabd..b4161a4e 100644 --- a/README.md +++ b/README.md @@ -246,6 +246,7 @@ __Docker 最新版本由 [Sakuracio](https://github.com/Sakuracio) 提供__ ### 2022/7/16 * cos提供连发命令 +* 修复B站视频解析中b23解析错误 ### 2022/7/13 diff --git a/plugins/parse_bilibili_json.py b/plugins/parse_bilibili_json.py index b82cfa00..ca6628aa 100755 --- a/plugins/parse_bilibili_json.py +++ b/plugins/parse_bilibili_json.py @@ -56,18 +56,11 @@ async def _(event: GroupMessageEvent): ) as session: async with session.get( data["meta"]["detail_1"]["qqdocurl"], - proxy=get_local_proxy(), timeout=7, ) as response: url = str(response.url).split("?")[0] bvid = url.split("/")[-1] vd_info = await video.get_video_base_info(bvid) - # response = await AsyncHttpx.get( - # data["meta"]["detail_1"]["qqdocurl"], timeout=7 - # ) - # url = str(response.url).split("?")[0] - # bvid = url.split("/")[-1] - # vd_info = await video.Video(bvid=bvid).get_info() # 转发专栏 if ( data.get("meta") @@ -123,11 +116,17 @@ async def _(event: GroupMessageEvent): url = f"https://www.bilibili.com/video/{msg}" vd_info = await video.get_video_base_info(msg) elif "https://b23.tv" in msg: - url = "https://" + msg[msg.find("b23.tv") : msg.find("b23.tv") + 13] - res = await AsyncHttpx.get(url, timeout=7) - url = str(res.url).split("?")[0] - bvid = url.split("/")[-1] - vd_info = await video.get_video_base_info(bvid) + url = "https://" + msg[msg.find("b23.tv"): msg.find("b23.tv") + 14] + async with aiohttp.ClientSession( + headers=get_user_agent() + ) as session: + async with session.get( + url, + timeout=7, + ) as response: + url = str(response.url).split("?")[0] + bvid = url.split("/")[-1] + vd_info = await video.get_video_base_info(bvid) if vd_info: if ( url in _tmp.keys() and time.time() - _tmp[url] > 30