# backend/news_fetcher.py from datetime import datetime import feedparser def fetch_news(rss_url): feed = feedparser.parse(rss_url) articles = [] for entry in feed.entries: try: # Try parsing with timezone first pub_date = datetime.strptime(entry.published, "%a, %d %b %Y %H:%M:%S %z") except ValueError: try: # Fallback to GMT format without timezone pub_date = datetime.strptime(entry.published, "%a, %d %b %Y %H:%M:%S %Z") except ValueError: # Final fallback - use current time if parsing fails pub_date = datetime.now() articles.append({ "title": entry.title, "content": entry.description, "published": pub_date, "source": rss_url }) return articles