본문 바로가기

Python AI 자동 뉴스 키워드 분석기 만들기 (웹 크롤링 + 자연어 처리)

디지털 백수 2025. 3. 25.
반응형

인터넷 뉴스에서 핵심 키워드를 자동으로 추출하면 최신 트렌드를 빠르게 분석할 수 있습니다. 이번 프로젝트에서는 Python 웹 크롤링 + 자연어 처리(NLP) 기술을 활용하여 뉴스 기사에서 주요 키워드를 자동으로 분석하는 프로그램을 만들어 보겠습니다.

📌 1. AI 뉴스 키워드 분석기란?

이 프로그램은 뉴스 기사에서 주요 단어를 자동 추출하여 가장 중요한 키워드를 분석합니다.

핵심 기능:

  • 네이버 뉴스 크롤링 (BeautifulSoup 활용)
  • AI 키워드 추출 (KoNLPy + YAKE 라이브러리 활용)
  • 빈도 분석을 통한 트렌드 파악

📌 2. 필요한 패키지 설치

Python 환경에서 뉴스 크롤링 및 NLP를 사용하기 위해 다음 패키지를 설치해야 합니다.

pip install requests beautifulsoup4 konlpy yake

📌 3. Python 코드: 자동 뉴스 키워드 분석기

아래 코드를 실행하면 최신 뉴스에서 키워드를 자동 추출할 수 있습니다.

import requests
from bs4 import BeautifulSoup
import yake
from konlpy.tag import Okt

# 뉴스 기사 크롤링 함수
def fetch_news(url):
    headers = {"User-Agent": "Mozilla/5.0"}
    response = requests.get(url, headers=headers)
    soup = BeautifulSoup(response.text, "html.parser")
    
    # 네이버 뉴스 본문 크롤링 (다른 뉴스 사이트는 태그 수정 필요)
    article_body = soup.select_one("#dic_area")  # 네이버 뉴스 본문 ID
    return article_body.get_text() if article_body else "뉴스 본문을 찾을 수 없습니다."

# 키워드 추출 함수
def extract_keywords(text, num_keywords=10):
    keyword_extractor = yake.KeywordExtractor(n=1, top=num_keywords)
    keywords = keyword_extractor.extract_keywords(text)
    return [kw[0] for kw in keywords]

# 한국어 명사 추출 (KoNLPy 활용)
def extract_nouns(text):
    okt = Okt()
    nouns = okt.nouns(text)
    return list(set(nouns))  # 중복 제거

# 실행 예제 (네이버 뉴스 기사 URL 입력)
news_url = "https://n.news.naver.com/article/001/0014418973"
news_text = fetch_news(news_url)

print("📌 뉴스 본문:\n", news_text[:300], "...")  # 일부 출력
print("\n🔹 자동 추출 키워드 (YAKE):", extract_keywords(news_text))
print("\n🔹 명사 키워드 (KoNLPy):", extract_nouns(news_text))

📌 4. 코드 설명

  • 웹 크롤링: 네이버 뉴스에서 본문 내용을 가져옴
  • AI 키워드 추출: YAKE 알고리즘을 활용하여 주요 키워드 자동 분석
  • 한국어 키워드 분석: KoNLPy를 사용해 명사만 필터링하여 키워드 추출

📌 5. 실행 예시

📌 뉴스 본문:
정부는 2024년 경제 성장률 전망치를 2.1%로 상향 조정하며, 국내 소비 증가와 수출 회복이 주요 요인이라고 발표했다. ...

🔹 자동 추출 키워드 (YAKE): ['경제 성장률', '국내 소비', '수출 회복', '정부', '발표']

🔹 명사 키워드 (KoNLPy): ['경제', '성장률', '소비', '수출', '정부']

📌 6. 확장 아이디어 🚀

  • 여러 뉴스 사이트 크롤링 → 네이버, 다음, 조선일보 등 다양한 사이트 적용
  • 트렌드 분석 → 1주일간 뉴스 키워드 빈도 분석하여 인기 키워드 예측
  • 시각화 → 키워드 클라우드(word cloud) 생성

📌 7. 마무리

이번 프로젝트에서는 Python을 활용하여 AI 자동 뉴스 키워드 분석기를 만드는 방법을 배웠습니다.

이 기술을 활용하면 최신 트렌드를 실시간으로 파악하고, 검색량이 높은 키워드를 분석할 수 있습니다! 🚀

반응형

댓글