yt-dlp → PikPak Pipeline / Download-to-Cloud-Pipeline
Ein Befehl: yt-dlp lädt ein Video herunter → per WebDAV auf PikPak hochladen → Prüfung → lokale Kopie löschen.
Sicherheitsversprechen: Lokale Dateien werden erst gelöscht, nachdem der Upload erfolgreich war und die Größe auf dem Server verifiziert wurde (codebedingte Einschränkung, cleanup_local verarbeitet nur verifizierte Dateien).
Site-Abdeckung: yt-dlp unterstützt über 1000 Websites, darunter gängige wie YouTube, TikTok, X (Twitter), Facebook, Instagram, Bilibili, Vimeo – genau die Szenarien, für die PikPak optimiert ist (PikPaks eigene Social-Media-Speicherung ist nur in der App verfügbar; diese Pipeline bringt sie in die Kommandozeile für den Batch-Betrieb). TikTok/X usw. ändern ihre Regeln häufig; bei Fehlern zuerst yt-dlp -U ausführen, um zu aktualisieren.
0. Voraussetzungen / Prerequisites
- PikPak Premium (WebDAV nur für Mitglieder). Kein Konto? Mit dem Skill
pikpak-onboardingbeginnen. - yt-dlp:
pip install yt-dlp(oderwinget install yt-dlp). - Python 3.8+ mit
requests. - Kopieren Sie
webdav.config.json.examplenachwebdav.config.jsonund tragen Sie Ihre WebDAV-Anmeldedaten ein (Klartext-Passwort, von git ignoriert, nicht teilen).
1. Verwendung / Usage
# Einzelner Link
python scripts/pipeline.py "https://youtube.com/watch?v=..." --remote-dir my_videos
# Batch-Liste
python scripts/pipeline.py --url-file urls.txt --remote-dir my_videos
# Testlauf (ohne Download/Upload)
python scripts/pipeline.py --url-file urls.txt --remote-dir my_videos --dry-run
# Lokale Kopien behalten
python scripts/pipeline.py "URL" --remote-dir my_videos --keep-local
| Parameter | Beschreibung |
|---|---|
URL... / --url-file | Von yt-dlp unterstützte Links; in der Liste eine pro Zeile, # am Zeilenanfang = Kommentar |
--remote-dir | Zielordner in PikPak (wird automatisch erstellt) |
--work-dir | Lokales temporäres Download-Verzeichnis, Standard: scripts/../downloads_tmp |
--keep-local | Lokale Dateien nach erfolgreichem Upload behalten |
--retry | Anzahl der Wiederholungen für den Upload einer Datei, Standard: 5 |
--dry-run | Nur den geplanten Ablauf anzeigen |
--yt-dlp-args | Zusätzliche Parameter, die an yt-dlp durchgereicht werden, z. B. --yt-dlp-args -f best |
2. Arbeitsablauf (zur Erläuterung für den Benutzer) / How it works
Vier Schritte pro URL:
- Download yt-dlp →
--work-dir(neue Dateien werden durch Snapshot-Vergleich erkannt) - Upload Dateiweise per Streaming PUT → PikPak, Größenprüfung auf dem Server
- Bereinigung Verifizierte lokale Kopien werden gelöscht (außer bei
--keep-local) - Protokollierung
state/pipeline_<Verzeichnis>.jsonzeichnet für jede URL done/failed auf → bei Unterbrechung werden abgeschlossene URLs automatisch übersprungen
3. Häufige Fallstricke / Gotchas
- Wenn yt-dlp nicht im PATH ist, bricht das Programm mit einem Fehler ab – zuerst
yt-dlp --versionprüfen. - Wiederholte Ausführung derselben URL wird übersprungen (Status auf done); zum erneuten Ausführen den entsprechenden Eintrag in
state/löschen. - WebDAV kann keine Dateien dauerhaft in der Cloud löschen; zur Bereinigung in der Cloud die offizielle App/Website verwenden.
- Einige Websites benötigen Cookies/Login; mit
--yt-dlp-args --cookies-from-browser chromedurchreichen. - Compliance-Hinweis: Nur Inhalte herunterladen, zu deren Zugriff Sie berechtigt sind.
4. Verwandte Skills / Related skills
pikpak-onboarding: Noch kein PikPak-Konto? Von der Registrierung an starten (inkl. Anleitung zur Installation der offiziellen CLI).pikpak-webdav-upload: Bereits lokal heruntergeladene Dateien? Direkt im Batch hochladen.