From 54e033bb03aad2ba7adbccf7180a865893ab1c79 Mon Sep 17 00:00:00 2001 From: Claude-51124 Date: Fri, 30 Jan 2026 09:42:31 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20260130=20=EB=84=A4=EC=9D=B4=EB=B2=84=20?= =?UTF-8?q?=EC=8A=A4=ED=83=80=ED=8A=B8=EC=97=85=20=ED=97=A4=EB=93=9C?= =?UTF-8?q?=EB=9D=BC=EC=9D=B8=20=EC=A4=91=EA=B0=84=20=EB=A7=81=ED=81=AC=20?= =?UTF-8?q?=ED=8C=8C=EC=8B=B1=20=EC=88=98=EC=A0=95=20=ED=8A=B8=EB=9F=AC?= =?UTF-8?q?=EB=B8=94=EC=8A=88=ED=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Cursor --- ...0130_naver_startup_headline_middle_link.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 journey/troubleshooting/260130_naver_startup_headline_middle_link.md diff --git a/journey/troubleshooting/260130_naver_startup_headline_middle_link.md b/journey/troubleshooting/260130_naver_startup_headline_middle_link.md new file mode 100644 index 0000000..ea49d4d --- /dev/null +++ b/journey/troubleshooting/260130_naver_startup_headline_middle_link.md @@ -0,0 +1,33 @@ +# 네이버 스타트업 헤드라인 제목 중간 링크 파싱 누락 수정 + +**날짜**: 2026-01-30 +**작성자**: happybell80 +**관련 파일**: `skill_news/app/services/naver_startup_news_service.py` + +--- + +## 문제 상황 + +- 깡프로 스타트업 뉴스 슬랙 전송 시 일부 항목이 "18. 화장품"처럼 짧게만 표시됨 +- 원문에는 "18. 화장품 M&A 시장 볕 드나, 뷰티 큰손들 예의주시"인데, 제목 중간에 "M&A"가 링크(``)로 있어서 기존 로직은 span 한 개 텍스트만 사용 → 링크 뒤 제목이 누락됨 + +## 원인 + +- `extract_startup_headlines`: `^\d{1,2}\.\s+`에 맞는 span의 `get_text()`만 사용 +- 제목이 "span(18. 화장품) + M&A + 텍스트(시장 볕 드나...)"로 나뉘어 있으면 span만으로는 링크 뒤 텍스트를 못 가져옴 + +## 해결 방안 + +- 부모에 "번호. " span이 **하나뿐**일 때만 **부모 전체 `get_text(separator=' ')`** 사용 → 중간 링크 텍스트도 제목에 포함 +- 제목 끝에 붙은 URL 문자열은 제거 후 저장 +- 그 외(부모에 번호 span이 여러 개)는 기존처럼 span 텍스트만 사용 + +## 구현 완료 + +- `skill_news` 레포: `naver_startup_news_service.py` 수정 +- 테스트: 18번 항목 "18. 화장품 M&A 시장 볕 드나, 뷰티 큰손들 예의주시" 정상 추출 확인, 22개 항목 모두 비어 있지 않음 + +## 교훈 + +- 블로그 본문에서 제목이 여러 요소(span + 링크 + 텍스트)로 쪼개져 있으면, 한 span만 보지 말고 **부모 블록 단위**로 텍스트를 가져오면 중간 링크도 포함됨 +- 부모에 번호 span이 하나일 때만 부모 텍스트 사용하면, 한 블록에 여러 항목이 섞인 경우 기존 동작 유지