eb91e2fffdf27ca9947184a6a79354b03f7c7f1d
				
			
			
		
	SERMAN RSS Feed Generator - Lokale Version
Ein Python-Tool zum Erstellen von RSS-Feeds aus lokalen MP3-Dateien für Podcast-Apps. Optimiert für Cron-Jobs und automatische Aktualisierungen.
🚀 Schnellstart
Für Cron-Jobs (empfohlen)
# Automatisches Setup
./cron_setup.sh
# Oder manuell
uv run python main.py --quiet
Für manuelle Nutzung
# Einfache Generierung
uv run python main.py
# Mit eigenen Parametern
uv run python main.py --audio-dir /pfad/zu/mp3s --title "Mein Podcast"
Features
- 🎵 Scannt automatisch nach MP3-Dateien
 - 📱 Erstellt Podcast-kompatible RSS-Feeds (Apple Podcasts, Spotify, etc.)
 - 🏷️ Liest ID3-Tags und Cover-Art aus MP3-Dateien
 - ⏰ Optimiert für Cron-Jobs (quiet-Mode, keine Server-Abhängigkeiten)
 - 🔄 Automatische Cover-Extraktion und -Optimierung
 - 📊 Vollständige iTunes-Podcast-Kompatibilität
 
Installation
# Dependencies installieren
uv sync
# MP3-Dateien in das _audio/ Verzeichnis legen
mkdir -p _audio
# Kopiere deine MP3-Dateien nach _audio/
🛠️ Parameter
uv run python main.py [OPTIONEN]
Optionen:
  -a, --audio-dir PATH     MP3-Verzeichnis (Standard: _audio)
  -o, --output DATEI       RSS-Datei (Standard: serman_podcast.xml)
  -u, --base-url URL       Basis-URL (Standard: https://www.serman.club)
  -t, --title TITEL        Podcast-Titel
  --author AUTOR           Podcast-Autor (Standard: SERMAN)
  -q, --quiet              Stille Ausgabe (für Cron-Jobs)
  -h, --help               Hilfe anzeigen
⏰ Cron-Job Setup
Automatisches Setup
./cron_setup.sh
Das Setup erstellt:
- ✅ Cron-Wrapper-Script (
run_rss_generator.sh) - ✅ Log-Rotation (
rotate_logs.sh) - ✅ Automatische Cron-Installation (optional)
 
Manuelle Cron-Konfiguration
# Crontab bearbeiten
crontab -e
# Beispiel: Stündliche Aktualisierung
0 * * * * /pfad/zum/script/run_rss_generator.sh >/dev/null 2>&1
Weitere Cron-Beispiele:
*/15 * * * *- Alle 15 Minuten0 */6 * * *- Alle 6 Stunden0 6 * * *- Täglich um 6:00 Uhr
📁 Verzeichnisstruktur
rss-feeder/
├── main.py                    # Haupt-Script (Cron-optimiert)
├── local_podcast_generator.py # RSS-Generator-Klasse
├── cron_setup.sh             # Automatisches Cron-Setup
├── run_rss_generator.sh      # Cron-Wrapper (auto-generiert)
├── rss_generator.log         # Log-Datei (auto-generiert)
├── serman_podcast.xml        # RSS-Feed (auto-generiert)
├── _audio/                   # MP3-Dateien hier ablegen
│   ├── mix1.mp3
│   ├── mix2.mp3
│   └── cover_mix1.jpg        # Auto-extrahierte Cover
└── requirements.txt
🌐 Webserver-Integration
# RSS-Feed zu Webserver kopieren
cp serman_podcast.xml /var/www/html/
# Mit nginx/Apache bereitstellen
# URL: https://deinserver.de/serman_podcast.xml
📱 Podcast-App-Kompatibilität
Getestet mit:
- ✅ Apple Podcasts
 - ✅ Spotify
 - ✅ Google Podcasts
 - ✅ Overcast
 - ✅ Pocket Casts
 - ✅ Alle RSS-2.0-Apps
 
🎵 Audio-Features
- Format: MP3-Dateien (.mp3)
 - Metadaten: Automatische ID3-Tag-Erkennung
 - Cover-Art: Automatische Extraktion und Optimierung für Apple Podcasts
 - Sortierung: Neueste Dateien zuerst (nach Änderungsdatum)
 
📋 Logging und Monitoring
# Live-Log anzeigen
tail -f rss_generator.log
# Letzte Einträge
tail -n 50 rss_generator.log
# Cron-Job Status prüfen
crontab -l
🔧 Troubleshooting
Script läuft nicht
# Dependencies prüfen
uv sync
# Manual testen
uv run python main.py
# Pfade prüfen
which uv
which python3
Cron-Job läuft nicht
# Wrapper-Script testen
./run_rss_generator.sh
# Log prüfen  
tail -f rss_generator.log
# Crontab prüfen
crontab -l
📚 Dokumentation
- CRON_README.md - Detaillierte Cron-Anleitung
 - demo.sh - Funktions-Demo ausführen
 
🔄 Migration von Server-Version
Wenn du die alte Server-Version verwendet hast:
- Stoppe den alten Server
 - Installiere Cron-Version: 
./cron_setup.sh - Teste: 
uv run python main.py --quiet - RSS-URL bleibt gleich (nur Generation ändert sich)
 
💡 Empfehlung: Für Produktiveinsatz stündliche Cron-Jobs verwenden.
Description
				
					Languages
				
				
								
								
									Python
								
								100%