#!/usr/bin/env python3
import json
import requests
from datetime import datetime, timedelta
from urllib.parse import urlparse
import feedparser
import os

MEDIA_FILE = os.path.expanduser("~/Claude/Projects/에이전트구축/media_feed.jsonl")

# RSS 피드 소스들
RSS_FEEDS = [
    "https://www.eetimes.com/feed/",
    "https://semiengineering.com/feed/",
    "https://spectrum.ieee.org/feed",
    "https://www.tomshardware.com/feeds/all",
    "https://rss.etnews.com/",
    "https://tradingeconomics.com/rss/news.php",
]

def fetch_feeds():
    items = []
    for feed_url in RSS_FEEDS:
        try:
            d = feedparser.parse(feed_url)
            for entry in d.entries[:5]:
                item = {
                    "url": entry.get("link", ""),
                    "pub": entry.get("published", datetime.utcnow().isoformat()),
                    "text": entry.get("title", ""),
                    "source": urlparse(feed_url).netloc
                }
                items.append(item)
        except:
            pass
    return items

def save_feed(items):
    existing = set()
    if os.path.exists(MEDIA_FILE):
        with open(MEDIA_FILE, 'r') as f:
            for line in f:
                try:
                    obj = json.loads(line)
                    existing.add(obj.get("url"))
                except:
                    pass
    
    with open(MEDIA_FILE, 'a') as f:
        for item in items:
            if item["url"] not in existing:
                f.write(json.dumps(item) + "\n")

if __name__ == "__main__":
    items = fetch_feeds()
    save_feed(items)
