From 37abebf8f87c1f47efcc45387830fbcb0273b5ba Mon Sep 17 00:00:00 2001 From: yukaidi Date: Fri, 29 May 2026 13:58:13 +0800 Subject: [PATCH] =?UTF-8?q?fix(QQscTool):=20=E7=AE=80=E5=8C=96=20filesetId?= =?UTF-8?q?=20=E6=AD=A3=E5=88=99=EF=BC=8C=E9=81=BF=E5=85=8D=E5=8F=8D?= =?UTF-8?q?=E6=96=9C=E6=9D=A0=E8=BD=AC=E4=B9=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parser/src/main/java/cn/qaiu/parser/impl/QQscTool.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/parser/src/main/java/cn/qaiu/parser/impl/QQscTool.java b/parser/src/main/java/cn/qaiu/parser/impl/QQscTool.java index 0e0d439..a92534d 100644 --- a/parser/src/main/java/cn/qaiu/parser/impl/QQscTool.java +++ b/parser/src/main/java/cn/qaiu/parser/impl/QQscTool.java @@ -281,11 +281,10 @@ public class QQscTool extends PanBase { * 从 HTML 的 __NUXT_DATA__ 中提取 fileset_id */ String extractFilesetId(String html) { - // Nuxt __NUXT_DATA__ 中 fileset_id 出现在缓存 key 的嵌套转义 JSON 中: - // {\"fileset_id\":\"0500417e-5431-433f-a9f3-d5ccf9412da3\"} - // 匹配 \"fileset_id\" 后面最近的 UUID + // Nuxt __NUXT_DATA__ 中 fileset_id 出现在缓存 key 的嵌套 JSON 中 + // 直接匹配 fileset_id 后面最近的 UUID(跳过转义引号、冒号等非hex字符) Pattern pattern = Pattern.compile( - "\\\\\"fileset_id\\\\\"[^a-f0-9]*([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})"); + "fileset_id[^a-f0-9]*([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})"); Matcher matcher = pattern.matcher(html); if (matcher.find()) { return matcher.group(1);