newsintel-agent / search.py
Hasitha16's picture
Upload 11 files
ed42ca4 verified
raw
history blame contribute delete
915 Bytes
import os, requests
from dotenv import load_dotenv
load_dotenv()
TAVILY_API_KEY = os.getenv("TAVILY_API_KEY")
def get_news(query: str, days: int = 7, k: int = 10):
"""Return a list of {title, url, snippet} from Tavily."""
if not TAVILY_API_KEY:
raise RuntimeError("Missing TAVILY_API_KEY")
payload = {
"api_key": TAVILY_API_KEY,
"query": f"{query} news last {days} days",
"max_results": k,
"search_depth": "basic",
"include_answer": False
}
r = requests.post("https://api.tavily.com/search", json=payload, timeout=30)
r.raise_for_status()
data = r.json()
results = []
for item in data.get("results", []):
results.append({
"title": item.get("title", ""),
"url": item.get("url", ""),
"snippet": (item.get("content") or "")[:600]
})
return results