fix(indexer): normalize Rousi profile fields

This commit is contained in:
jxxghp
2026-08-26 22:42:29 +08:00
parent 50b85235d8
commit be8db5520b
+8 -3
View File
@@ -86,12 +86,15 @@ class RousiSiteUserInfo(SiteParserBase):
return return
if not isinstance(data, dict): if not isinstance(data, dict):
self.err_msg = "用户数据响应结构无效" # 基类把 err_msg 推断为 None,运行时契约允许解析器写入错误文本。
self.err_msg = "用户数据响应结构无效" # type: ignore[assignment]
logger.warning(f"{self._site_name} API 响应结构无效") logger.warning(f"{self._site_name} API 响应结构无效")
return return
if data.get("code") != 0: if data.get("code") != 0:
self.err_msg = data.get("message", "未知错误") self.err_msg = str( # type: ignore[assignment]
data.get("message") or "未知错误"
)
logger.warning(f"{self._site_name} API 错误: {self.err_msg}") logger.warning(f"{self._site_name} API 错误: {self.err_msg}")
return return
@@ -105,7 +108,9 @@ class RousiSiteUserInfo(SiteParserBase):
self.user_level = user_info.get("level_text") or user_info.get("role_text") self.user_level = user_info.get("level_text") or user_info.get("role_text")
# 注册时间:统一格式为 YYYY-MM-DD HH:MM:SS # 注册时间:统一格式为 YYYY-MM-DD HH:MM:SS
join_at = time_tools.normalize_datetime(user_info.get("registered_at")) join_at = time_tools.normalize_datetime(
str(user_info.get("registered_at") or "")
)
if join_at: if join_at:
# 确保格式为 YYYY-MM-DD HH:MM:SS (19位) # 确保格式为 YYYY-MM-DD HH:MM:SS (19位)
if len(join_at) >= 19: if len(join_at) >= 19: