fix(law_monitor): JP/EU RSS URL 수정 — news.rdf + rss.xml, RDF 네임스페이스 대응
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -303,16 +303,19 @@ def fetch_jp_mhlw(last_check: dict) -> int:
|
||||
logger.info("=== JP 厚生労働省 확인 ===")
|
||||
try:
|
||||
import xml.etree.ElementTree as ET
|
||||
resp = requests.get("https://www.mhlw.go.jp/stf/rss/shinchaku.xml", timeout=30)
|
||||
resp = requests.get("https://www.mhlw.go.jp/stf/news.rdf", timeout=30)
|
||||
resp.raise_for_status()
|
||||
root = ET.fromstring(resp.content)
|
||||
|
||||
safety_keywords = ["労働安全", "安全衛生", "労災", "化学物質", "石綿", "安全管理"]
|
||||
ns = {"rss": "http://purl.org/rss/1.0", "dc": "http://purl.org/dc/elements/1.1/"}
|
||||
count = 0
|
||||
|
||||
for item in root.iter("item"):
|
||||
title = item.findtext("title", "")
|
||||
link = item.findtext("link", "")
|
||||
# RDF 1.0 형식: <item> 또는 {ns}item
|
||||
items = root.findall("rss:item", ns) or root.iter("item")
|
||||
for item in items:
|
||||
title = item.findtext("rss:title", "", ns) or item.findtext("title", "")
|
||||
link = item.findtext("rss:link", "", ns) or item.findtext("link", "")
|
||||
pub_date = item.findtext("pubDate", "")
|
||||
|
||||
# 안전위생 키워드 필터
|
||||
@@ -366,7 +369,7 @@ def fetch_eu_osha(last_check: dict) -> int:
|
||||
logger.info("=== EU-OSHA 확인 ===")
|
||||
try:
|
||||
import xml.etree.ElementTree as ET
|
||||
resp = requests.get("https://osha.europa.eu/en/rss", timeout=30)
|
||||
resp = requests.get("https://osha.europa.eu/en/rss.xml", timeout=30)
|
||||
resp.raise_for_status()
|
||||
root = ET.fromstring(resp.content)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user