{"record":{"id":"b4ec61433476a0c5","repo":"sansan0/TrendRadar","slug":"status","errorCode":null,"errorMessage":"响应状态异常: {status}","messagePattern":"响应状态异常: (.+?)","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"trendradar/crawler/fetcher.py","lineNumber":133,"sourceCode":"            proxies = {\"http\": self.proxy_url, \"https\": self.proxy_url}\n\n        retries = 0\n        while retries <= max_retries:\n            try:\n                response = requests.get(\n                    url,\n                    proxies=proxies,\n                    headers=self.DEFAULT_HEADERS,\n                    timeout=10,\n                )\n                response.raise_for_status()\n\n                data_text = response.text\n                data_json = json.loads(data_text)\n\n                status = data_json.get(\"status\", \"未知\")\n                if status not in [\"success\", \"cache\"]:\n                    raise ValueError(f\"响应状态异常: {status}\")\n\n                status_info = \"最新数据\" if status == \"success\" else \"缓存数据\"\n                print(f\"获取 {id_value} 成功（{status_info}）\")\n                return data_text, id_value, alias\n\n            except Exception as e:\n                retries += 1\n                if retries <= max_retries:\n                    base_wait = random.uniform(min_retry_wait, max_retry_wait)\n                    additional_wait = (retries - 1) * random.uniform(1, 2)\n                    wait_time = base_wait + additional_wait\n                    print(f\"请求 {id_value} 失败: {e}. {wait_time:.2f}秒后重试...\")\n                    time.sleep(wait_time)\n                else:\n                    print(f\"请求 {id_value} 失败: {e}\")\n                    return None, id_value, alias\n\n        return None, id_value, alias","sourceCodeStart":115,"sourceCodeEnd":151,"githubUrl":"https://github.com/sansan0/TrendRadar/blob/8ee26026ba6c11dec41a95fb3895a7162876caa1/trendradar/crawler/fetcher.py#L115-L151","documentation":"Error \"响应状态异常: {status}\" thrown in sansan0/TrendRadar.","triggerScenarios":"Thrown at trendradar/crawler/fetcher.py:133 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["稍后重试，数据源可能暂时返回非 success/cache 状态","检查该数据源的 API 是否正常，确认平台 id 是否有效","查看日志中打印的具体 status 值以定位原因"],"exampleFix":"# 增加重试或更换数据源平台 id，例如:\nplatforms:\n  - id: \"weibo\"\n    name: \"微博热搜\"","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8ee26026ba6c11dec41a95fb3895a7162876caa1","analyzedAt":"2026-08-15T01:42:18.084Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}