DOCS/journey/troubleshooting/260130_naver_startup_headline_middle_link.md
2026-01-30 09:42:31 +09:00

1.7 KiB

네이버 스타트업 헤드라인 제목 중간 링크 파싱 누락 수정

날짜: 2026-01-30 작성자: happybell80 관련 파일: skill_news/app/services/naver_startup_news_service.py


문제 상황

  • 깡프로 스타트업 뉴스 슬랙 전송 시 일부 항목이 "18. 화장품"처럼 짧게만 표시됨
  • 원문에는 "18. 화장품 M&A 시장 볕 드나, 뷰티 큰손들 예의주시"인데, 제목 중간에 "M&A"가 링크(<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이 하나일 때만 부모 텍스트 사용하면, 한 블록에 여러 항목이 섞인 경우 기존 동작 유지