import feedparser
import requests
from bs4 import BeautifulSoup
import time
# Liste der RSS-Feeds für IT-Nachrichten
FEEDS = [
"
Sie müssen registriert sein, um Links zu sehen.
",
"
Sie müssen registriert sein, um Links zu sehen.
",
"
Sie müssen registriert sein, um Links zu sehen.
",
"
Sie müssen registriert sein, um Links zu sehen.
"
]
# Funktion zum Abrufen des ersten Bildes aus einem Artikel
def get_first_image(article_url):
try:
response = requests.get(article_url, timeout=5, headers={'User-Agent': 'Mozilla/5.0'})
soup = BeautifulSoup(response.content, 'html.parser')
img_tag = soup.find('img')
if img_tag and 'src' in img_tag.attrs:
return img_tag['src']
except Exception as e:
print(f"Fehler beim Abrufen des Bildes: {e}")
return None
# Funktion zum Abrufen und Verarbeiten der Nachrichten
def fetch_news():
posts = []
for feed in FEEDS:
parsed_feed = feedparser.parse(feed)
for entry in parsed_feed.entries[:5]: # Nur die neuesten 5 Artikel pro Quelle
title = entry.title
link = entry.link
summary = entry.summary if hasattr(entry, 'summary') else "Keine Beschreibung verfügbar."
image = get_first_image(link)
post = f"
{title}\n{summary}\n[Bild]({image})\n[Mehr lesen]({link})\n\n"
posts.append(post)
return "\n".join(posts)
# Hauptfunktion zur regelmäßigen Ausführung
if
name == "
main":
while True:
print("\n--- Neue IT-Nachrichten ---\n")
news_content = fetch_news()
print(news_content)
time.sleep(3600) # Eine Stunde warten