From 3fb5af33ab0f3922a60a59e5d0098e95e765d9d7 Mon Sep 17 00:00:00 2001 From: OpenClaw Agent Date: Tue, 10 Feb 2026 12:38:24 +0800 Subject: [PATCH] feat: Add mobile opus URL support for Bilibili - Support m.bilibili.com/opus/{id} for dynamic posts - Handle mobile URLs when resolving short links --- skills/kb-link-parser/link-parser.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/skills/kb-link-parser/link-parser.py b/skills/kb-link-parser/link-parser.py index 7bd10ba..6a9a801 100644 --- a/skills/kb-link-parser/link-parser.py +++ b/skills/kb-link-parser/link-parser.py @@ -32,6 +32,7 @@ class LinkParser: BILIBILI_ARTICLE_PATTERN = re.compile(r'https?://(?:www\.)?bilibili\.com/(?:article|read)/([a-zA-Z0-9]+)') BILIBILI_SPACE_PATTERN = re.compile(r'https?://(?:space\.)?bilibili\.com/(\d+)') BILIBILI_MOBILE_SPACE_PATTERN = re.compile(r'https?://m\.bilibili\.com/space/(\d+)') + BILIBILI_MOBILE_OPUS_PATTERN = re.compile(r'https?://m\.bilibili\.com/opus/(\d+)') BILIBILI_FAVLIST_PATTERN = re.compile(r'https?://(?:space\.)?bilibili\.com/\d+/favlist\?fid=(\d+)') BILIBILI_OPUS_PATTERN = re.compile(r'https?://(?:www\.)?bilibili\.com/opus/(\d+)') BILIBILI_SERIES_PATTERN = re.compile(r'https?://(?:space\.)?bilibili\.com/\d+/lists/(\d+)\?type=series') @@ -122,6 +123,15 @@ class LinkParser: "id": match.group(1) } + # Try mobile opus (移动端动态) + match = self.BILIBILI_MOBILE_OPUS_PATTERN.match(url) + if match: + return { + "platform": "bilibili", + "type": "opus", + "id": match.group(1) + } + # Try video match = self.BILIBILI_VIDEO_PATTERN.match(url) if match: