解析账号

This commit is contained in:
mzl
2026-01-10 22:09:31 +08:00
parent a7f36e2ef1
commit 420c9b872a
2 changed files with 25 additions and 28 deletions
+16 -4
View File
@@ -618,23 +618,35 @@ def resolve_profile_by_search(
continue
score = 0
score_reasons = []
# 精确匹配小红书号:最高优先级
if xhs_no and xhs_no.lower() == kw.lower():
score += 1000
score_reasons.append("小红书号精确匹配")
# 精确匹配昵称:高优先级
elif nickname and nickname.lower() == kw.lower():
if nickname and nickname.lower() == kw.lower():
score += 500
# 昵称包含关键词:中优先级
elif nickname and kw.lower() in nickname.lower():
score_reasons.append("昵称精确匹配")
# 昵称包含关键词:中优先级(不使用 elif,允许累加)
if nickname and kw.lower() in nickname.lower() and nickname.lower() != kw.lower():
score += 50
score_reasons.append("昵称包含关键词")
# URL 中包含关键词:低优先级
if kw.lower() in href.lower():
score += 20
score_reasons.append("URL包含关键词")
# 有有效的 profile ID:基础分
if _extract_profile_id_from_href(href):
score += 5
score_reasons.append("有效Profile ID")
_log(log, f"[账号] - 昵称: {nickname[:30] if len(nickname) > 30 else nickname}, 账号: {xhs_no}, 得分: {score}")
reasons_str = ", ".join(score_reasons) if score_reasons else "无匹配"
_log(log, f"[账号] - 昵称: {nickname[:30] if len(nickname) > 30 else nickname}, 账号: {xhs_no}, 得分: {score} ({reasons_str})")
if score > best_score:
best_score = score