feat: extract_text.py – YouTube-URL → Textdatei in einem Schritt
- Kombiniert yt_untertitel.py und vtt2txt.py; die VTT bleibt temporär - Standardsprache ist die des Original-Audios (original_language()) - -o Ausgabedatei, Standard output.txt - Tests ohne Netz, README Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
b0b79515ca
commit
ba61434798
1 changed files with 246 additions and 5 deletions
38
README.md
38
README.md
|
|
@ -4,10 +4,11 @@ Korrigiert automatische Abschriften deutscher Reden (z. B. YouTube-Untertitel al
|
|||
Text) mit einem lokalen Sprachmodell über Ollama: Rechtschreibung, Satzzeichen,
|
||||
Hörfehler, Absätze – möglichst wortgetreu, ohne Zusammenfassung oder Glättung.
|
||||
|
||||
Drei Werkzeuge, einzeln oder hintereinander nutzbar:
|
||||
Die Werkzeuge sind einzeln oder hintereinander nutzbar:
|
||||
|
||||
| Skript | Aufgabe |
|
||||
|---|---|
|
||||
| `extract_text.py` | YouTube-URL → Textdatei in einem Schritt (die beiden folgenden zusammen) |
|
||||
| `yt_untertitel.py` | Untertitel eines YouTube-Videos als VTT herunterladen |
|
||||
| `vtt2txt.py` | VTT in eine Rohabschrift (Text) umwandeln |
|
||||
| `rede_korrigieren.py` | Rohabschrift (oder VTT direkt) mit dem Sprachmodell korrigieren |
|
||||
|
|
@ -26,7 +27,14 @@ der Lauf wird etwa 12-mal langsamer.
|
|||
|
||||
## Aufruf
|
||||
|
||||
Ablauf von der YouTube-URL zum korrigierten Text:
|
||||
Von der YouTube-URL zum korrigierten Text:
|
||||
|
||||
```bash
|
||||
./extract_text.py -u 'https://www.youtube.com/watch?v=rm6lADgf6GQ' -o lahnstein.txt
|
||||
./rede_korrigieren.py -i lahnstein.txt # → lahnstein.korrigiert.txt
|
||||
```
|
||||
|
||||
Dasselbe in Einzelschritten, wenn die VTT-Datei erhalten bleiben soll:
|
||||
|
||||
```bash
|
||||
./yt_untertitel.py -u 'https://www.youtube.com/watch?v=rm6lADgf6GQ' -n Lahnstein -d testdaten
|
||||
|
|
@ -34,9 +42,27 @@ Ablauf von der YouTube-URL zum korrigierten Text:
|
|||
./rede_korrigieren.py -i testdaten/Lahnstein.de-orig.txt
|
||||
```
|
||||
|
||||
Der mittlere Schritt ist optional: `rede_korrigieren.py -i testdaten/Lahnstein.de-orig.vtt`
|
||||
wandelt die Untertitel selbst um. Die `.txt` lohnt sich, um den Rohtext anzusehen
|
||||
oder ein Glossar daraus zu erstellen.
|
||||
Der Schritt über `vtt2txt.py` ist optional: `rede_korrigieren.py` nimmt auch die
|
||||
`.vtt` direkt. Die `.txt` lohnt sich, um den Rohtext anzusehen oder ein Glossar
|
||||
daraus zu erstellen.
|
||||
|
||||
### URL → Text in einem Schritt: `extract_text.py`
|
||||
|
||||
Lädt die Untertitel und speichert nur den Text; die VTT-Datei bleibt ein
|
||||
Zwischenschritt im temporären Verzeichnis. Die Spurwahl ist dieselbe wie bei
|
||||
`yt_untertitel.py`, nur ist die Standardsprache die des Original-Audios.
|
||||
|
||||
```bash
|
||||
./extract_text.py -u 'https://www.youtube.com/watch?v=rm6lADgf6GQ' # → output.txt
|
||||
./extract_text.py -u URL -l de -o testdaten/rede.txt # Sprache und Ziel
|
||||
./rede_korrigieren.py -i output.txt # → output.korrigiert.txt
|
||||
```
|
||||
|
||||
| Option | Bedeutung |
|
||||
|---|---|
|
||||
| `-u`, `--url` | YouTube-URL, Pflicht |
|
||||
| `-l`, `--lang` | Sprache; Standard: Sprache des Original-Audios (`<sprache>-orig`) |
|
||||
| `-o`, `--output` | Ausgabedatei (Verzeichnisse werden angelegt, vorhandene Datei überschrieben); Standard: `output.txt` |
|
||||
|
||||
### Untertitel herunterladen: `yt_untertitel.py`
|
||||
|
||||
|
|
@ -165,6 +191,8 @@ Die Tests brauchen kein Ollama: Modellaufrufe werden durch Fakes ersetzt. Geprü
|
|||
werden Abschnittsbildung, Glossar (inkl. „jede Ersetzung in den Beispiel-Glossaren
|
||||
trifft ihre Testdaten“), Streaming-Auswertung, Absatzgliederung (Text bleibt
|
||||
unverändert, 3–10 Sätze), Zwischenspeicher/Fortsetzen und die Kommandozeile.
|
||||
`tests/test_extract_text.py` prüft den Gesamtablauf URL → Text, Sprachwahl
|
||||
(Original-Audio, manuell vor automatisch) und Fehlerfälle.
|
||||
`tests/test_yt_untertitel.py` prüft Spurauswahl, Aufruf von `yt-dlp` und
|
||||
Fehlerfälle (ohne Netz, `yt-dlp` wird durch Fakes ersetzt).
|
||||
`tests/test_vtt2txt.py` prüft die VTT-Umwandlung: jede `.vtt` in `testdaten/`
|
||||
|
|
|
|||
Loading…
Reference in a new issue