diff --git a/config.py b/config.py index a8bff74..f4f9336 100644 --- a/config.py +++ b/config.py @@ -323,7 +323,7 @@ YOUTUBE_API_KEY = os.getenv('YOUTUBE_API_KEY', '') # ========================================== # 系統版本與路徑 # ========================================== -SYSTEM_VERSION = "V10.357" +SYSTEM_VERSION = "V10.358" LOG_FILE_PATH = os.path.join(BASE_DIR, 'logs/system.log') public_url = PUBLIC_URL # 用於模板顯示 diff --git a/services/marketplace_product_matcher.py b/services/marketplace_product_matcher.py index 998bc5f..1fe7c24 100644 --- a/services/marketplace_product_matcher.py +++ b/services/marketplace_product_matcher.py @@ -215,6 +215,14 @@ SEARCH_NOISE_PHRASES = ( "打造素顏女神", "我愛修膚", "第三代經典版白", + "溫和不乾澀", + "寶寶共和國", + "任選三款", + "三款", + "枚入", + "類光繚指甲油專用亮油", + "小銀蓋", + "如膠似漆", "第三代", "經典版", ) @@ -261,6 +269,13 @@ SEARCH_NOISE_TOKENS = { "第三代", "經典版", "版白", + "溫和不乾澀", + "寶寶共和國", + "三款", + "枚入", + "小銀蓋", + "如膠似漆", + "美甲", } SEARCH_IDENTITY_ANCHORS = ( @@ -268,6 +283,9 @@ SEARCH_IDENTITY_ANCHORS = ( "水凝光透 妝前防護乳", "水凝光透妝前防護乳", "經典素顏霜", + "閃耀保色護甲油", + "溫和洗手慕斯", + "足足稱奇足膜", "時尚潮流美甲片", "止汗爽身噴霧", "止汗爽身乳膏pro", @@ -414,6 +432,9 @@ PRODUCT_TYPES = { "潔膚露": ("潔膚露", "浴潔露", "護潔露", "沐浴露", "wash", "私密潔浴露"), "私密噴霧": ("私密噴霧", "抑菌噴霧", "醒肌抑菌噴霧"), "私密凝露": ("凝露", "激淨凝露", "緊實凝露", "亮白凝露"), + "護甲油": ("護甲油", "亮油", "top coat"), + "洗手慕斯": ("洗手慕斯", "洗手泡泡", "hand wash foam"), + "足膜": ("足膜", "足部膜", "足部去角質"), "妝前乳": ("妝前乳", "妝前防護乳", "妝前隔離", "primer"), "素顏霜": ("素顏霜", "tone up cream"), "氣墊粉餅": ("氣墊粉餅", "cushion"), diff --git a/tests/test_marketplace_product_matcher.py b/tests/test_marketplace_product_matcher.py index 6f324cd..e22043f 100644 --- a/tests/test_marketplace_product_matcher.py +++ b/tests/test_marketplace_product_matcher.py @@ -857,6 +857,30 @@ def test_marketplace_search_terms_prioritize_precise_primer_identity_phrase(): assert "懶人霜" not in " ".join(eaoron_terms[:3]) +def test_marketplace_search_terms_prefer_exact_identity_for_nail_foam_and_foot_mask(): + from services.marketplace_product_matcher import build_search_terms + + opi_terms = build_search_terms( + "【O.P.I】Top Coat 持久閃耀保色護甲油15mL-IST31(類光繚指甲油專用亮油/小銀蓋/如膠似漆/美甲/官方直營)", + max_terms=5, + ) + arau_terms = build_search_terms( + "【arau baby】愛樂寶 溫和洗手慕斯300ml (溫和不乾澀;寶寶共和國)", + max_terms=5, + ) + kameria_terms = build_search_terms( + "【KAMERIA】凱蜜菈 足足稱奇足膜17ml*2枚入(任選三款)", + max_terms=5, + ) + + assert opi_terms[0] == "ist31 閃耀保色護甲油 15ml" + assert "小銀蓋" not in " ".join(opi_terms[:3]) + assert arau_terms[0] == "愛樂寶 溫和洗手慕斯 300ml" + assert "溫和不乾澀" not in " ".join(arau_terms[:3]) + assert kameria_terms[0] == "凱蜜菈 足足稱奇足膜 17ml 2包" + assert "枚入" not in " ".join(kameria_terms[:3]) + + def test_marketplace_search_terms_prefer_specific_line_over_generic_usage_words(): from services.marketplace_product_matcher import build_search_terms