{"record":{"id":"a8d9217e0dbb6012","repo":"fish2018/pansou","slug":"error-a8d921","errorCode":null,"errorMessage":"提取链接失败","messagePattern":"提取链接失败","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"plugin/panyq/panyq.go","lineNumber":1152,"sourceCode":"\t\t\t\t\t\tfinalLink = url\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t\n\t// 如果JSON解析失败，尝试使用正则表达式\n\tif finalLink == \"\" {\n\t\turlRegex := regexp.MustCompile(`(https?://[^\\s\"'<>]+|magnet:\\?[^\\s\"'<>]+)`)\n\t\turlMatch := urlRegex.FindStringSubmatch(responseText)\n\t\t\n\t\tif len(urlMatch) > 0 {\n\t\t\tfinalLink = urlMatch[0]\n\t\t}\n\t}\n\t\n\tif finalLink == \"\" {\n\t\treturn \"\", fmt.Errorf(\"提取链接失败\")\n\t}\n\n\t// 保存链接到缓存\n\tfinalLinkCacheLock.Lock()\n\tfinalLinkCache[linkCacheKey] = finalLink\n\tfinalLinkCacheLock.Unlock()\n\t\n\treturn finalLink, nil\n}\n\n// determineLinkType 根据URL确定链接类型\nfunc (p *PanyqPlugin) determineLinkType(url string) string {\n\tlowerURL := strings.ToLower(url)\n\t\n\tswitch {\n\tcase strings.Contains(lowerURL, \"pan.baidu.com\"):\n\t\treturn \"baidu\"\n\tcase strings.Contains(lowerURL, \"alipan.com\") || strings.Contains(lowerURL, \"aliyundrive.com\"):","sourceCodeStart":1134,"sourceCodeEnd":1170,"githubUrl":"https://github.com/fish2018/pansou/blob/beaa56133755a548ebc51b090b3816e2ae044aa6/plugin/panyq/panyq.go#L1134-L1170","documentation":"Extraction failure in PanyqPlugin.getFinalLink (plugin/panyq/panyq.go:1152): neither JSON parsing nor the URL regex found a pan/magnet link in the final step's response text, so no link can be returned. Indicates an unexpected or empty final response.","triggerScenarios":"Thrown at plugin/panyq/panyq.go:1152 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["记录响应文本核对提取逻辑","更新链接匹配正则覆盖新格式","该场景返回空并标记资源失效"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"beaa56133755a548ebc51b090b3816e2ae044aa6","analyzedAt":"2026-09-07T00:31:18.025Z","contentChangedAt":"2026-09-07T00:31:18.025Z","schemaVersion":2},"datasetVersion":"2026-09-15T23:17:13.987Z"}