import feedparser import requests from bs4 import BeautifulSoup import os from langchain_google_genai import ChatGoogleGenerativeAI from langchain_core.messages import HumanMessage def test(): rss_url = "https://news.google.com/rss/search?q=%EA%B8%88&hl=ko&gl=KR&ceid=KR:ko" feed = feedparser.parse(rss_url) if not feed.entries: return entry = feed.entries[0] print("Link:", entry.link) try: # fetch r = requests.get(entry.link, timeout=10, headers={'User-Agent': 'Mozilla/5.0'}) soup = BeautifulSoup(r.text, 'html.parser') text = soup.get_text(separator=' ', strip=True) print("Text preview:", text[:200]) # Test Gemini llm = ChatGoogleGenerativeAI(model="gemini-2.5-flash", temperature=0.1) prompt = f""" 다음은 뉴스 기사 원문입니다: {text[:3000]} 이 뉴스가 금(Gold, 귀금속/투자자산)과 관련된 실제 뉴스인지 판별하고, 맞다면 기사의 핵심 내용을 1~2줄로 요약해주세요. 만약 금과 전혀 관련이 없는 뉴스라면 (예: 금요일, 송금, 시세 없는 일반 기사 등) 'NOT_GOLD_NEWS' 라고만 정확히 답변하세요. 요약 결과: """ response = llm.invoke([HumanMessage(content=prompt)]) print("\nGemini Response:", response.content) except Exception as e: print("Error:", e) if __name__ == "__main__": test()