Files
serman-rss-wrapper-mixcloud/README.md
Manuel Weiser 36b62f7136 Update dependencies and restructure project files
- Added mutagen, requests, and yt-dlp as dependencies in pyproject.toml and requirements.txt.
- Removed run_generator.py, start_server.py, and test_generator.py as they are no longer needed.
- Introduced setup.sh for initial setup instructions and directory creation.
- Updated uv.lock with new package versions and dependencies.
2025-07-05 19:39:19 +02:00

114 lines
2.8 KiB
Markdown

# SERMAN RSS Feed Generator - Lokale Version
Ein Python-Tool zum Erstellen von RSS-Feeds aus lokalen MP3-Dateien für Podcast-Apps.
## Features
- 🎵 Scannt automatisch das `_audio/` Verzeichnis nach MP3-Dateien
- 📱 Erstellt Podcast-kompatible RSS-Feeds
- 🏷️ Liest ID3-Tags automatisch aus MP3-Dateien
- 🌐 Integrierter HTTP-Server zum Hosten der Dateien
- ⚡ Einfache Bedienung über Kommandozeile
## Installation
1. Abhängigkeiten installieren:
```bash
uv sync
```
2. MP3-Dateien in das `_audio/` Verzeichnis legen
## Verwendung
### Einfache Nutzung
```bash
uv run python main.py
```
### Mit HTTP-Server
```bash
uv run python main.py --serve
```
### Erweiterte Optionen
```bash
uv run python main.py --audio-dir _audio --output my_podcast.xml --base-url https://meinserver.de --serve --port 8080
```
## Parameter
- `--audio-dir`: Verzeichnis mit MP3-Dateien (Standard: `_audio`)
- `--output`: Name der RSS-Feed-Datei (Standard: `serman_podcast.xml`)
- `--base-url`: Basis-URL für Audio-Links (Standard: `http://localhost:8000`)
- `--serve`: Startet automatisch einen HTTP-Server
- `--port`: Port für den HTTP-Server (Standard: 8000)
## RSS-Feed URLs
Nach dem Start des Servers ist der Feed verfügbar unter:
- **Lokal**: http://localhost:8000/serman_podcast.xml
- **Mit eigener Basis-URL**: [DEINE_URL]/serman_podcast.xml
## Podcast-App Integration
1. RSS-Feed generieren und Server starten
2. RSS-URL in Podcast-App hinzufügen
3. Neue MP3-Dateien im `_audio/` Verzeichnis ablegen
4. Feed neu generieren für Updates
## Dateiformat
Das Tool liest automatisch folgende ID3-Tags:
- **TIT2**: Titel (Fallback: Dateiname)
- **TPE1**: Künstler (Fallback: "SERMAN")
- **TALB**: Album (optional)
- **Dauer**: Automatisch erkannt
## Verzeichnisstruktur
```text
rss-feeder/
├── _audio/ # MP3-Dateien hier ablegen
│ ├── mix1.mp3
│ ├── mix2.mp3
│ └── README.md
├── main.py # Hauptprogramm
├── local_podcast_generator.py # RSS-Generator
├── serman_podcast.xml # Generierter RSS-Feed
└── requirements.txt # Python-Abhängigkeiten
```
## Deployment
Für produktive Nutzung:
1. **Server bereitstellen** (z.B. VPS, Cloud-Instance)
2. **Dateien hochladen** und Dependencies installieren
3. **Permanenten Webserver** konfigurieren (nginx, Apache)
4. **RSS-Feed URL** an Hörer verteilen
## Automatisierung
Für automatische Updates bei neuen MP3-Dateien:
```bash
# Beispiel-Script für cron job
#!/bin/bash
cd /pfad/zu/rss-feeder
uv run python main.py --base-url https://meinserver.de/podcast
```
---
## Legacy: Mixcloud-Version
Die ursprünglichen Mixcloud-Skripte sind noch vorhanden:
- `mixcloud_rss_pro.py` - Mixcloud RSS mit Audio-Extraktion
- `mixcloud_rss.py` - Einfache Mixcloud RSS-Generierung
Siehe Git-Historie für die ursprüngliche Mixcloud-basierte README.