z230
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
# Video — stahování videí
|
||||
|
||||
## stahni_video.py
|
||||
|
||||
Stahuje videa z Vimea, YouTube a dalších webů přes **yt-dlp**. Nejlepší dostupná
|
||||
kvalita, sloučení video+audio do `.mp4`. Soukromá / nedostupná videa sám pozná
|
||||
a přeskočí (nespadne).
|
||||
|
||||
### Závislosti (jednorázově)
|
||||
|
||||
```bat
|
||||
python -m pip install -U yt-dlp static-ffmpeg
|
||||
```
|
||||
|
||||
- **yt-dlp** — vlastní downloader.
|
||||
- **static-ffmpeg** — dodá `ffmpeg.exe` + `ffprobe.exe` (v systému ffmpeg není).
|
||||
Skript si přes `static_ffmpeg.add_paths()` cestu nastaví sám; binárky se
|
||||
stáhnou při prvním běhu do `site-packages\static_ffmpeg\bin\`.
|
||||
|
||||
### Použití
|
||||
|
||||
```bat
|
||||
python stahni_video.py URL [URL2 ...]
|
||||
python stahni_video.py # vezme URL z urls.txt (1 na řádek)
|
||||
python stahni_video.py --cookies-from-browser firefox URL # video za přihlášením
|
||||
python stahni_video.py -o D:\nekam URL # jiný výstupní adresář
|
||||
```
|
||||
|
||||
Výchozí výstupní adresář je tento (`Video/`). Soubory: `%(title)s [%(id)s].mp4`.
|
||||
|
||||
### Jak pozná soukromé/nedostupné video
|
||||
|
||||
yt-dlp vyhodí `DownloadError` s textem chyby. Funkce `klasifikuj_chybu()` hledá
|
||||
v textu známé fráze (`private video`, `video unavailable`, `removed`,
|
||||
`members-only`, …) a vrátí český popis → video se přeskočí. Jiné chyby (síť,
|
||||
chybí ffmpeg) se vypíšou jako `[CHYBA]`, ale běh pokračuje na další URL.
|
||||
Na konci se vypíše souhrn (staženo / přeskočeno / chyby).
|
||||
|
||||
### Poznámky / úskalí
|
||||
|
||||
- **Soukromé YouTube video opravdu nejde stáhnout**, pokud k němu přihlášený
|
||||
účet nemá udělený přístup — to je záměr, skript ho jen přeskočí.
|
||||
- **Diakritika v názvech**: cesty se zkomolí, když se předávají Windows binárce
|
||||
přes Bug Bash pipe; v běžné konzoli (cp1250) je vše v pořádku.
|
||||
- **Vimeo** dává oddělené video/audio HLS streamy → ffmpeg je nutný pro sloučení.
|
||||
- Při prvním běhu může yt-dlp varovat na chybějící JavaScript runtime (deno);
|
||||
pro běžná veřejná videa to nevadí.
|
||||
Reference in New Issue
Block a user