OG 가격 폴백으로 Shopify 계열 상품 페이지를 파서로 처리 - #52
Open
m-a-king wants to merge 1 commit into
Open
Conversation
- Shopify 계열은 표준 product:price:* 대신 구형 og:price:* 만 내보내 OG 경로가 가격을 놓쳤고, 최상위 노드가 ProductGroup 이라 JSON-LD 경로도 함께 미스했다. 두 경로가 다 미스해 매 요청이 Gemini fallback 으로 가면서 같은 사이트의 상품명이 요청마다 갈렸다 (prod 토너먼트 1350 의 20건 전부 SERVER_LLM) - 표준 태그를 먼저 보고 없을 때만 구형으로 폴백한다. amount 와 currency 를 각각 폴백해, 통화 태그만 단독으로 있는 페이지를 no_data 아닌 missing_field 로 가르는 기존 규칙이 구형 네임스페이스에서도 유지된다 - JSON-LD 의 ProductGroup 인식 추가는 택하지 않았다 - 지원하면 JSON-LD 가 우선순위상 먼저 이겨 이름이 색상 없는 한글로 바뀌고, 같은 상품의 다른 색상이 한 토너먼트에 올라왔을 때 구분이 사라진다 - og:price:amount 의 천단위 콤마는 기존 PRICE_NOISE 가 이미 제거해 추가 처리를 넣지 않았다. 통화는 extractor 가 보내는 Accept-Language 헤더로 KRW 가 정상 수신되는 것을 실측해 회귀 위험이 없음을 확인했다
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Situation
ProductGroup이라 Product 매칭에 안 걸리고, 실제 Product 는hasVariant배열 안에 있는데 파서가 그 키를 재귀하지 않는다.SERVER_LLM이었고 이름이 세 갈래로 나왔다.Stream Pants (Archive) - Charcoal러너 자켓 (Archive) 차콜차콜·스노우 블랙은 페이지에 없는 값 (본문 검색 0건)러너 자켓 (Archive)\n \n 차콜Task
og:title로 읽히므로 파서가 완결되어 이 사이트들이 결정론적 경로로 내려간다.ProductGroup인식까지 함께 넣을 것인가.Action
구현
product:price:amount/product:price:currency)를 먼저 보고, 없을 때만 구형(og:price:amount/og:price:currency)을 본다.og:title을 그대로 쓴다. 색상이 이름에 포함돼 있어(Cut Out Boots (2026) - Black) 같은 상품의 다른 색상이 한 토너먼트에 올라와도 구분된다. 실제로 토너먼트 1350 에- Black과- Beige가 함께 올라와 있다.스코프 결정
ProductGroup인식 추가는 이 PR 에서 하지 않고 후속 이슈 #53 으로 분리했다. 이 PR 이 고치는 것은 가격 한 필드이고,ProductGroup은 "상품명의 출처를 무엇으로 볼 것인가"라는 별개의 판단이기 때문이다.같은 부츠의 두 색상을 실측한 결과 (2026-08-25, extractor 와 같은
Accept-Language로 fetch):f26-cut-out-boots-blackf26-cut-out-boots-beigeog:titleCut Out Boots (2026) - BlackCut Out Boots (2026) - BeigeProductGroup.name컷아웃 부츠컷아웃 부츠hasVariant컷아웃 부츠 - 250등)color키가 없고, 색상은 Shopify 상품 자체가 갈려 URL 로만 구분된다.hasVariant는 색상이 아니라 신발 사이즈다.ProductGroup을 JSON-LD 경로 첫 자리에 넣으면 이름이 회귀한다. JSON-LD 가 성공하면 OG 를 아예 보지 않으므로 두 색상이 모두컷아웃 부츠가 되고, 변형까지 재귀하면 두 색상이 모두컷아웃 부츠 - 250이 되어 사이즈가 상품명에 박힌다. 토너먼트는 항목을 이름으로 구분하는데 1350 에 이 두 색상이 함께 올라와 있다.확인한 전제
680,000 KRW로 정상 수신된다. 헤더가 없으면 같은 페이지가84,100 JPY를 내주므로, 현재 헤더 설정에서만 성립하는 전제다.680,000), 기존 가격 정규화가 이미 콤마를 제거한다.Result
ProductGroup인 JSON-LD 는 여전히 미스한다. 이 PR 은 OG 경로로만 해결하므로, 구형 OG 태그가 없으면서ProductGroup만 쓰는 사이트는 계속 LLM 으로 간다. 후속 이슈 ProductGroup 을 OG 다음 폴백으로 인식해 파서 커버리지 확장 #53 에서 OG 다음 폴백으로 다룬다.연관 이슈