From ec6074d9ee6c46d1d9c828b86003609a5521d157 Mon Sep 17 00:00:00 2001 From: Hyungi Ahn Date: Thu, 26 Mar 2026 13:48:22 +0900 Subject: [PATCH] =?UTF-8?q?fix(law=5Fmonitor):=20API=20=EC=97=90=EB=9F=AC?= =?UTF-8?q?=20=EC=9D=91=EB=8B=B5=20=EB=A1=9C=EA=B9=85=20=EC=B6=94=EA=B0=80?= =?UTF-8?q?=20=E2=80=94=20=EC=9D=B8=EC=A6=9D=20=EC=8B=A4=ED=8C=A8=20?= =?UTF-8?q?=EC=8B=9C=20=EC=A1=B0=EC=9A=A9=ED=9E=88=20=EB=84=98=EC=96=B4?= =?UTF-8?q?=EA=B0=80=EB=8D=98=20=EB=AC=B8=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 (1M context) --- scripts/law_monitor.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/law_monitor.py b/scripts/law_monitor.py index 2244267..4c9e68b 100644 --- a/scripts/law_monitor.py +++ b/scripts/law_monitor.py @@ -64,11 +64,16 @@ def fetch_law_info(law_oc: str, law_id: str) -> dict | None: resp = requests.get(url, params=params, timeout=30) resp.raise_for_status() data = resp.json() + # API 에러 응답 감지 + if "result" in data and "실패" in str(data.get("result", "")): + logger.error(f"법령 API 에러 [{law_id}]: {data.get('result')} — {data.get('msg')}") + return None if "LawSearch" in data and "law" in data["LawSearch"]: laws = data["LawSearch"]["law"] if isinstance(laws, list): return laws[0] if laws else None return laws + logger.warning(f"법령 응답에 데이터 없음 [{law_id}]: {list(data.keys())}") return None except Exception as e: logger.error(f"법령 조회 실패 [{law_id}]: {e}")