| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- from __future__ import annotations
- from typing import Any
- class MockPlatformClient:
- """Deterministic platform client used before real Douyin access exists."""
- def search(self, query: dict[str, Any]) -> list[dict[str, Any]]:
- query_id = query["query_id"]
- if query_id == "q_001":
- return [
- {
- "candidate_id": "c_001",
- "query_id": query_id,
- "aweme_id": "7390000000000000000",
- "desc": "基层干部贪腐警示案例",
- "author_sec_uid": "MS4wLjABAAAA001",
- "author_nickname": "警示故事",
- "statistics": {"digg_count": 1200, "comment_count": 80, "share_count": 300},
- "cha_list": ["#警示教育"],
- "score": 72,
- "age_50_plus_level": "medium",
- "risk_level": "low",
- "portrait_available": True,
- "pattern_recall": "matched",
- "category_or_element_binding": "matched",
- "candidate_relation": "mock_pattern_matched",
- "origin_source": "pattern_itemset",
- "immediate_source": "query_direct",
- },
- {
- "candidate_id": "c_099",
- "query_id": query_id,
- "aweme_id": "7390000000000000099",
- "desc": "缺少画像的低可信候选",
- "author_sec_uid": "MS4wLjABAAAA099",
- "author_nickname": "未知作者",
- "statistics": {"digg_count": 12, "comment_count": 0, "share_count": 1},
- "cha_list": [],
- "score": None,
- "age_50_plus_level": "missing",
- "risk_level": "unknown",
- "portrait_available": False,
- "pattern_recall": "matched",
- "category_or_element_binding": "matched",
- "candidate_relation": "mock_pattern_matched",
- "origin_source": "pattern_itemset",
- "immediate_source": "query_direct",
- },
- ]
- return [
- {
- "candidate_id": "c_002",
- "query_id": query_id,
- "aweme_id": "7390000000000000001",
- "desc": "同主题延展候选案例",
- "author_sec_uid": "MS4wLjABAAAA002",
- "author_nickname": "案例观察",
- "statistics": {"digg_count": 600, "comment_count": 20, "share_count": 70},
- "cha_list": ["#基层治理"],
- "score": 55,
- "age_50_plus_level": "medium",
- "risk_level": "low",
- "portrait_available": True,
- "pattern_recall": "matched",
- "category_or_element_binding": "matched",
- "candidate_relation": "mock_pattern_matched",
- "origin_source": "pattern_itemset",
- "immediate_source": "query_direct",
- }
- ]
|