Youtube-dl
youtube-dl - télécharger des vidéos à partir de youtube.com ou d'autres plateformes vidéo Traduction des options du README.md
INSTALLATION
Pour installer Youtube-dl immédiatement pour tous les utilisateurs d'UNIX (Linux, macOS, etc.), tapez
sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl
Si vous n'avez pas curl, vous pouvez aussi utiliser un wget récent :
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl
Les utilisateurs de Windows télécharger un fichier .exe et le placer n'importe où dans leur PATH sauf `%SYSTEMROOT%\System32` (par exemple ne pas utiliser `C:\Windows\System32`).
Vous pouvez aussi utiliser pip:
sudo -H pip install --upgrade youtube-dl
Cette commande mettra à jour youtube-dl si vous l'avez déjà installé. Voir la page pypi See the pypi page pour plus d'informations.
Les utilisateurs de macOS peuvent installer Youtube-dl avec with Homebrew:
brew install youtube-dl
Ou avec MacPorts:
sudo port install youtube-dl
Ou encore , se reporter aux instructions pour développeur pour savoir comment consulter et travailler avec le dépôt git. Pour d'autres options, y compris les signatures PGP, voir la page de téléchargement youtube-dl.
DESCRIPTION
youtube-dl est un programme en ligne de commande permettant de télécharger des vidéos de YouTube.com et de quelques autres sites. Il nécessite l'interpréteur Python, version 2.6, 2.7 ou 3.2+, et n'est pas spécifique à une plate-forme. Il devrait fonctionner sur votre système Unix, sur Windows ou sur macOS. Il est publié dans le domaine public, ce qui signifie que vous pouvez le modifier, le redistribuer ou l'utiliser comme vous le souhaitez.
youtube-dl [OPTIONS] URL [URL...]
OPTIONS
-h, --help Affiche ce texte d'aide et quitte
--version Affiche la version du programme est quitte
-U, --update Met à jour ce programme vers la dernière version. Assurez-vous d'avoir les droits suffisants (lancer avec sudo si nécessaire)
-i, --ignore-errors Poursuivre même après une erreur de téléchargement, par exemple pour sauter les vidéos non disponibles dans une playlist
--abort-on-error Abandonner le téléchargement d'autres vidéos (dans la liste de lecture ou la ligne de commande) si une erreur se produit.
--dump-user-agent Afficher l'identification du navigateur actuel
--list-extractors Liste de tous les opérateurs d'extraction soutenus exemple : Youtube ou Viméo ou Peertube
--extractor-descriptions Description des résultats de tous les opérateurs d'extraction soutenus
--force-generic-extractor Forcer l'extraction à utiliser l'opérateur générique
--default-search PREFIX Utilisez ce préfix pour les URLs non qualifiées. Par exemple "gvsearch2:" downloads two videos from google videos for youtube-dl "large apple". Utilisez la valeur "auto" pour laisser deviner youtube-dl ("auto_warning" pour émettre un avertissement s'il y a une supposition). "error" ne fait que lancer une erreur. La valeur par défaut "fixup_error" répare les URLs cassées, mais envoie une erreur si ce n'est pas possible au lieu de chercher.
--ignore-config Ne pas lire les fichiers de configuration. Quand cette option est utilisée dans le fichier de configuration global /etc/youtube-dl.conf: Ne pas lire la configuration de l'utilisateur dans ~/.config/youtube-dl/config (%APPDATA%/youtube-dl/config.txt sous Windows)
--config-location PATH Emplacement du fichier de configuration ; soit le chemin d'accès à la configuration ou au répertoir qui la contient.
--flat-playlist Ne pas extraire les vidéos d'une playlist mais, les lister uniquement.
--mark-watched Marquer les vidéos regardées (YouTube uniquement)
--no-mark-watched Ne pas marquer les vidéos regardées (YouTube uniquement)
--no-color Ne pas émettre de codes de couleur en sortie
Options de réseau
--proxy URL Utilisez le proxy HTTP/HTTPS/SOCKS spécifié. Pour activer le proxy SOCKS, spécifiez un schéma approprié. Par exemple socks5://127.0.0.1:1080/. Passez une chaîne vide (--proxy "") pour une connexion directe.
--socket-timeout SECONDS Le temps d'attente avant d'abandonner, en secondes
--source-address IP Adresse IP côté client à laquelle se connecter.
-4, --force-ipv4 Effectuez toutes les connexions via IPv4.
-6, --force-ipv6 Effectuez toutes les connexions via IPv6.
Restriction Géographique
--geo-verification-proxy URL Utilisez ce proxy pour vérifier l'adresse IP de certains sites à accès limité. Le proxy par défaut spécifié par --proxy (ou aucun, si l'option n'est pas présente) est utilisé pour le téléchargement proprement dit.
--geo-bypass Contourner la restriction géographique en falsifiant l'en-tête HTTP X-Forwarded-For
--no-geo-bypass Ne pas contourner la restruction géographique en falsifiant l'en-tête HTTP X-Forwarded-For
--geo-bypass-country CODE Contournement forcé de la restriction géographique grâce à un code pays ISO 3166-2 à deux lettres explicitement fourni
--geo-bypass-ip-block IP_BLOCK Contournement forcé de la restriction géographique avec un bloc IP explicitement fourni dans la notation CIDR
Sélection vidéo
--playlist-start NUMBER Commencer la playlist de vidéos à (par défaut, 1)
--playlist-end NUMBER Terminer la playlit de vidéos à (par défaut, la dernière)
--playlist-items ITEM_SPEC Éléments de la playlist de vidéos à télécharger. Spécifiez les indices des vidéos dans la playlist séparés par une virgule comme ceci: "--playlist-items 1,2,5,8" si vous voulez télécharger les vidéos indexées 1, 2, 5, 8 dans la playlist. Vous pouvez spécifier un intervalle : "--playlist-items 1-3,7,10-13", cela téléchargera les vidéos d'index 1, 2, 3, 7, 10, 11, 12 et 13.
--match-title REGEX Télécharger uniquement les titres correspondants (regex ou sous chaîne sub-string)
--reject-title REGEX Sauter le téléchargement pour les titres correspondants (regex ou sous chaîne sub-string)
--max-downloads NUMBER Abandon après le téléchargement de NUMBER fichiers
--min-filesize SIZE Ne pas télécharger de vidéo plus petites que SIZE (exemple: 50k ou 44.6m)
--max-filesize SIZE Ne pas télécharger de vidéo plus grandes que SIZE (exemple : 50k or 44.6m)
--date DATE Télécharger uniquement les vidéos mises en ligne à la date DATE
--datebefore DATE Télécharger uniquement les vidéos mises en ligne au plus tard à la date DATE (c'est-à-dire inclusif)
--dateafter DATE Télécharger uniquement les vidéos mises en ligne à partir de la date DATE (c'est-à-dire inclusif)
--min-views COUNT Ne pas télécharger de vidéo avec un compte de vues inférieur à COUNT
--max-views COUNT Ne pas télécharger de vidéo avec un compte de vues supérieur à COUNT
--match-filter FILTER Filtre vidéo générique. Indiquez n'importe quelle clé (voir "#MODÈLE DE SORTIE" pour avoir la liste des clés disponibles) pour vérifier si la clé est présente, !key pour vérifier si la clé n'est pas présente, key > NUMBER (par exemple "comment_count > 12", cela marche aussi avec >=, <, <=, !=, =) pour comparer avec un nombre, key = 'LITERAL' (par exemple "uploader = 'Mike Smith'", cela fonctionne aussi avec !=) pour comparer avec une chaîne littérale et & pour obtenir des correspondances multiples. Les valeurs qui ne sont pas connues sont exclues à moins que vous n'ajoutiez un point d'interrogation (?) après l'opérateur. Par exemple, pour sélectionner les vidéos qui ont été aimées plus de 100 fois et désapprouvées moins de 50 fois (ou la fonctionnalité dislike n'est pas disponible pour un service donné), mais qui a aussi une description, utilisez --match-filter "like_count > 100 & dislike_count <? 50 & description" .
--no-playlist Télécharger seulement la vidéo, si l'URL renvoie à une vidéo et à une playlist.
--yes-playlist Télécharger la playlist, si l'URL renvoie à une vidéo et à une playlist.
--age-limit YEARS Télécharger seulement les vidéos qui correspondent à l'âge YEARS
--download-archive FILE Télécharger uniquement les vidéos qui ne figurent pas dans dans le fichier d'archives. Enregistrer les IDs de toutes les vidéos téléchargées dans le fichier.
--include-ads Téléchargez également les annonces (expérimental)
Options de téléchargement
-r, --limit-rate RATE Taux de téléchargement maximum en octets par seconde (exemple: 50K or 4.2M)
-R, --retries RETRIES Nombre de tentatives (10 par défaut), ou "infinite".
--fragment-retries RETRIES Nombre d'essais pour un fragment (10 par défaut ou "infinite" (DASH, hlsnative et ISM)
--skip-unavailable-fragments Sauter les fragments non disponibles (DASH, hlsnative and ISM)
--abort-on-unavailable-fragment Abandonner le téléchargement lorsqu'un fragment n'est pas disponible.
--keep-fragments Conservez les fragments téléchargés sur le disque une fois le téléchargement terminé; les fragments sont supprimés par défaut.
--buffer-size SIZE Taille du buffer de téléchargement (exemple : 1024 ou 16K) (par défaut est égal à 1024)
--no-resize-buffer Ne pas ajuster automatiquement la taille du buffer Par défaut, la taille du buffer est automatiquement redimensionnée à partir d'une valeur initiale de SIZE.
--http-chunk-size SIZE Taille des blocs pour un téléchargement par transfert HTTP par bloc (exemple : 10485760 ou 10M) (par défaut cette option est désactiviée). Peut être utile pour contourner la limitation de la bande passante imposée par un serveur web (experimental)
--playlist-reverse Télécharger les vidéos dans l'ordre inverse d'une playlist.
--playlist-random Télécharger les vidéos d'une playlist dans un ordre aléatoire.
--xattr-set-filesize Définir le fichier xattribute ytdl.filesize avec la taille estimée du fichier
--hls-prefer-native Utilisez le téléchargeur HLS natif à la place de ffmpeg
--hls-prefer-ffmpeg Utiliser ffmpeg à la place du téléchargeur HLS natif.
--hls-use-mpegts Utilisez le conteneur mpegts pour les vidéos HLS, ce qui permet de lire la vidéo pendant son téléchargement (certains lecteurs ne permettent pas cette lecture)
--external-downloader COMMAND Utilisez le téléchargeur externe spécifié. Soutenus actuellement : aria2c,avconv,axel,curl,ffmpeg,httpie,wget
--external-downloader-args ARGS Fournir ces arguments au téléchargeur extérne.
Options du système de fichiers
-a, --batch-file FILE Fichier contenant les URLs à télécharger ('-' pour stdin), une URL par ligne. Les lignes qui commencent par '#', ';' or ']' sont considérées comme des commentaires et sont ignorées.
--id Utiliser uniquement l'identifiant de la vidéo dans le nom du fichier.
-o, --output TEMPLATE Modèle de nom de fichier de sortie, voir "#MODÈLE DE SORTIE" pour avoir toutes les informations.
--autonumber-start NUMBER Précisez la valeur de départ pour %(autonumber)s (Par défaut c'est 1)
--restrict-filenames Limiter les noms de fichiers aux seuls ASCII, et éviter les "&" et les espaces dans les noms de fichier.
-w, --no-overwrites Ne pas écraser les fichiers
-c, --continue Forcer la reprise des fichiers partiellement téléchargés. Par défaut, youtube-dl va reprendre les téléchargements si possible.
--no-continue Ne pas forcer la reprise des fichiers partiellement téléchargés. (recommencer depuis le début)
--no-part Ne pas utiliser de fichier .part - écrire directement dans le fichier de sortie
--no-mtime Ne pas utiliser l'en-tête Last-modified pour fixer l'heure de modification du fichier
--write-description Ecrire la description de la vidéo dans un fichier .description
--write-info-json Écrire les métadonnées vidéo dans un fichier .info.json
--write-annotations Écrivez des annotations vidéo dans un fichier .annotations.xml
--load-info-json FILE Fichier JSON contenant les informations de la vidéo (créé avec l'option "--write-info-json")
--cookies FILE Fichier permettant de lire les cookies File to read et de les placer dans un cookies jar
--cache-dir DIR Localisation dans le système de fichiers où youtube-dl peut stocker certaines informations de téléchargement en permanence. Par défaut $XDG_CACHE_HOME/youtube-dl ou ~/.cache/youtube-dl . À l'heure actuelle, seuls les fichiers du lecteur YouTube (pour les vidéos dont les signatures sont masquées) sont mises en cache, mais cela pourrait changer
--no-cache-dir Désactiver la mise en cache du système de fichiers
--rm-cache-dir Supprimer tous les fichiers de cache du système de fichiers
Images miniatures
--write-thumbnail Écrire l'image miniature sur le disque
--write-all-thumbnails Ecrire tous les formats d'images miniatures sur le disque
--list-thumbnails Simuler et répertorier tous les formats de vignettes disponibles.
Verbiage / Options de simulation
-q, --quiet Activer le mode silencieux.
--no-warnings Ignorer les avertissements.
-s, --simulate Ne pas télécharger la vidéo et ne rien écrire sur le disque.
--skip-download Ne pas télécharger la vidéo
-g, --get-url Simuler, silencieux mais imprimer l'URL
-e, --get-title Simuler, silencieux mais imprimer le titre
--get-id Simuler, silencieux mais imprimer l'id
--get-thumbnail Simuler, en silence mais imprimer l'URL de la vignette
--get-description Simuler, en silence mais imprimer la description de la vidéo.
--get-duration Simuler, en silence mais imprimer la taille de la vidéo.
--get-filename Simuler, en silence mais imprimer le nom du fichier de sortie
--get-format Simuler, en silence mais imprimer le format de sortie
-j, --dump-json Simuler, en silence mais imprimer les informations JSON. Voir "#MODÈLE DE SORTIE" pour avoir une description des clés disponibles.
-J, --dump-single-json Simuler, en silence mais imprimer les informations JSON pour chaque argument de la ligne de commande. Si l'URL renvoie vers une playlist, mettre l'ensemble des informations de la playlist sur une seule ligne.
--print-json Taire et imprimer les informations de la vidéos en JSON (La vidéo est en cours de téléchargement).
--newline Barre de progression des résultats sous forme de nouvelles lignes
--no-progress Ne pas afficher la barre de progression
--console-title Afficher la progression dans la barre de titre de la console
-v, --verbose Imprimer diverses informations de débogage
--dump-pages Imprimer les pages téléchargées encodées en avec base64 pour déboguer les problèmes (très verbeux)
--write-pages Ecrire les pages intermédiaires téléchargées dans les fichier dans le répertoire courant pour déboguer des problèmes
--print-traffic Afficher le trafic HTTP envoyé et lu
-C, --call-home Contacter le serveur youtube-dl pour débogage
--no-call-home Ne pas contacter le serveur youtube-dl pour débogage
Solutions de contournement
--encoding ENCODING Forcer l'encodage spécifié (expérimental)
--no-check-certificate Supprimer la validation des certificats HTTPS
--prefer-insecure Utilise une connexion non chiffrée pour récupérer des informations sur la vidéo. (Actuellement uniquement pour YouTube).
--user-agent UA Spécifier un agent utilisateur personnalisé
--referer URL Indiquer un référent personnalisé, à utiliser si l'accès à la vidéo est limité à un seul domaine.
--add-header FIELD:VALUE Spécifier un en-tête HTTP personnalisé et sa valeur, séparé par deux points ':'. Vous pouvez utiliser cette option plusieurs fois.
--bidi-workaround Contournez les terminaux qui ne prennent pas en charge les textes bidirectionnels. Nécessite un bidiv ou fribidi exécutable dans PATH.
--sleep-interval SECONDS Nombre de seconde à attendre avant chaque téléchargement quand cette option est utilisée seule ou limite inférieure de la fourchette pour une attente randomisée avant chaque téléchargement (nombre minimum de secondes possible à attendre) lorsqu'il est utilisé avec --max-sleep-interval.
--max-sleep-interval SECONDS Limite supérieure d'une plage d'attente randomisée avant chaque téléchargement (nombre de secondes maximum possible à attendre). Ne doit être utilisé qu'avec l'option --min-sleep-interval.
Options de format vidéo
-f, --format FORMAT Code de format vidéo, voir "#SÉLECTION DU FORMAT" pour avoir toutes les informations à ce sujet.
--all-formats Télécharger tous les formats vidéo disponibles
--prefer-free-formats Préfére les formats vidéo gratuits, à moins qu'un format spécifique ne soit demandé.
-F, --list-formats Liste de tous les formats disponibles des vidéos demandées.
--youtube-skip-dash-manifest Ne pas télécharger les manifestes DASH et les données relatives aux vidéos sur YouTube.
--merge-output-format FORMAT Si une fusion est nécessaire ( par exemple : bestvideo+bestaudio), au format de conteneur donné. Un de ces formats : mkv, mp4, ogg, webm, flv. Ignorée si aucune fusion n'est requise.
Options de sous-titrage
--write-sub Rédiger un fichier de sous-titres
--write-auto-sub Rédiger un fichier de sous-titres généré automatiquement (YouTube seulement)
--all-subs Télécharger tous les sous-titres disponibles de la vidéo.
--list-subs Liste de tous les sous-titres disponibles pour la vidéo.
--sub-format FORMAT Format des sous-titres, accepte les préférences de format, par exemple: "srt" ou "ass/srt/best"
--sub-lang LANGS Langues des sous-titres à télécharger (optionel) séparées par des virgules, utiliser --list-subs pour obtenir les balises linguistiques disponibles.
Options d'authentification
-u, --username USERNAME Se connecter avec l'identifiant d'un compte
-p, --password PASSWORD Mot de passe du compte. Si cette option est omise, youtube-dl le demandera de manière interactive.
-2, --twofactor TWOFACTOR Code d'authentification à deux facteurs
-n, --netrc Utiliser les données d'authentification .netrc
--video-password PASSWORD Mot de passe de la vidéo (vimeo, smotri, youku)
Options Adobe Pass
--ap-mso MSO Adobe Pass opérateur multi-système ( Fournisseur TV) identifier, utilisez --ap-list-mso pour obtenir la liste des MSOs disponibles.
--ap-username USERNAME Multiple-system operator account login
--ap-password PASSWORD Multiple-system operator account password. Si cette option est omise, youtube-dl demandera le mot de passe de manière interactive.
--ap-list-mso Liste de tous les opérateurs multi-systèmes pris en charge.
Options de post-traitement
-x, --extract-audio Convertir des fichiers vidéo en fichiers audio uniquement (nécessite ffmpeg ou avconv et ffprobe ou avprobe)
--audio-format FORMAT Spécifier le format audio: "best", "aac", "flac", "mp3", "m4a", "opus", "vorbis", or "wav"; "best" Par défaut; Pas d'effet sans -x
--audio-quality QUALITY Spécifier la qualité audio ffmpeg/avconv, insérer une valeur entre 0 (meilleur) et 9 (pire) pour VBR ou un bitrate spécifique de type 128K (Par défault 5)
--recode-video FORMAT Encode la vidéo vers un nouveau format si nécessaire (actuellement soutenu : mp4|flv|ogg|webm|mkv|avi)
--postprocessor-args ARGS Donne ces arguments au post-processeur
-k, --keep-video Conservez le fichier vidéo sur disque après le post-traitement ; la vidéo est effacée par défaut.
--no-post-overwrites Ne pas écraser les fichiers post-traités ; les fichiers post-traités sont écrasés par défaut.
--embed-subs Intégrer les sous-titres dans la vidéo (seulement pour les vidéos mp4, webm et mkv )
--embed-thumbnail Vignette incorporée dans l'audio comme couverture
--add-metadata Écrire les métadonnées dans le fichier vidéo
--metadata-from-title FORMAT Analyser les métadonnées supplémentaires comme le titre de chanson /l'artiste du titre de la vidéo. La syntaxe du format est la même que --output. Une expression régulière avec named capture groups peut aussi être utilisée. Les paramètres analysés remplacent les valeurs existantes. Exemple: --metadata-from- title "%(artist)s - %(title)s" correspond à un titre comme "Coldplay - Paradise". Exemple (regex): --metadata-from-title "(?P<artist>.+?) - (?P<title>.+)"
--xattrs Écrire les métadonnées dans les xattrs du fichier vidéo (en utilisant les normes dublin core et xdg)
--fixup POLICY Corriger automatiquement les défauts connus du fichier. Une des options suivantes : never (ne rien faire), warn (emet un avertissement), detect_or_warn (l'option par défaut; corrige le fichier si c'est possible, autrement envoie un avertissement)
--prefer-avconv Préférer avconv à ffmpeg pour exécuter le post-traitement.
--prefer-ffmpeg Préférer ffmpeg à avconv pour exécuter le post-traitement.(défaut)
--ffmpeg-location PATH Emplacement du binaire ffmpeg/avconv ; soit le chemin d'accès au répertoire binaire ou son contenu.
--exec CMD Exécute une commande sur le fichier après le téléchargement et le post-traitement, similaire à trouver -exec syntax. Exemple: --exec 'adb push {} /sdcard/Music/ && rm {}'
--convert-subs FORMAT Convertir les sous-titres dans un autre format (actuellement supporté : srt|ass|vtt|lrc)
CONFIGURATION
Vous pouvez configurer youtube-dl en plaçant toute option de ligne de commande prise en charge dans un fichier de configuration. Sous Linux et MacOS, le fichier de configuration pour l'ensemble du système se trouve à l'adresse `/etc/youtube-dl.conf` et le fichier de configuration pour un utilisateur à l'adresse `~/.config/youtube-dl/config`. Sous Windows, le fichier de configuration utilisateur se trouve à l'emplacement `%APPDATA%\youtube-dl\config.txt` ou `C:\Users\<nom d'utilisateur>\youtube-dl.conf`. Notez que le fichier de configuration par défaut peut ne pas exister et que vous devrez donc le créer vous-même.
Par exemple, avec le fichier de configuration suivant, youtube-dl va toujours extraire l'audio, ne pas copier le mtime, utiliser un proxy et enregistrer toutes les vidéos dans le répertoire "Movies" de votre répertoire d'origine :
# Les lignes commençant par # sont des commentaires # Toujours extraire l'audio -x # Ne pas copier le mtime --no-mtime # Utiliser ce proxy --proxy 127.0.0.1:3128 # Enregistrez toutes les vidéos dans le répertoire Vidéos de votre répertoire personnel -o ~/Movies/%(title)s.%(ext)s
Notez que les options du fichier de configuration sont les mêmes que celles utilisées dans les appels en ligne de commande, donc il ne doit pas y avoir d'espace après "-" ou "--", par exemple "o" ou "--proxy" mais pas "- o" ou "-- proxy".
Vous pouvez utiliser `--ignore-config` si vous voulez désactiver le fichier de configuration pour une exécution particulière de youtube-dl.
Vous pouvez également utiliser `--config-location` si vous souhaitez utiliser un fichier de configuration personnalisé pour une exécution particulière de youtube-dl.
Authentication with `.netrc` file
Vous pouvez également configurer le stockage automatique des informations d'identification pour les extracteurs qui prennent en charge l'authentification (en fournissant un nom d'utilisateur et un mot de passe avec `--nom d'utilisateur` et `--mot de passe`) afin de ne pas passer les informations d'identification comme arguments de ligne de commande à chaque exécution de youtube-dl et d'empêcher le suivi des mots de passe en texte clair dans l'historique des commandes du shell. Vous pouvez y parvenir en utilisant un fichier `.netrc` par extracteur. Pour cela, vous devrez créer un fichier `.netrc` dans votre `$HOME` et limiter les permissions de lecture/écriture à vous seul :
touch $HOME/.netrc chmod a-rwx,u+rw $HOME/.netrc
Ensuite, vous pouvez ajouter des références pour un extracteur dans le format suivant, où extracteur est le nom de l'extracteur en minuscules :
machine <extractor> login <login> password <password>
Par exemple:
machine youtube login myaccount@gmail.com password my_youtube_password machine twitch login my_twitch_account_name password my_twitch_password
Pour activer l'authentification avec le fichier `.netrc`, vous devez passer `--netrc` à youtube-dl ou le placer dans le #CONFIGURATION fichier de configuration.
Sous Windows, vous pouvez également avoir besoin de configurer manuellement la variable d'environnement "%HOME%". Par exemple :
set HOME=%USERPROFILE%
MODÈLE DE SORTIE
L'option "-o" permet aux utilisateurs d'indiquer un modèle pour les noms des fichiers de sortie.
L'usage de base n'est pas de définir des arguments pour un modèle lors du téléchargement d'un seul fichier, comme dans :
youtube-dl -o funny_video.flv "https://some/video"
Toutefois, le modèle peut contenir des séquences spéciales qui seront remplacées lors du téléchargement de chaque vidéo. Les séquences spéciales peuvent être formatées au moyen d' opérations de formatage de chaîne en python. Par exemple, `%(NAME)s` ou `%(NAME)05d`. Pour clarifier, il s'agit d'un symbole de pourcentage suivi d'un nom entre parenthèses, suivi d'opérations de formatage. Les noms autorisés ainsi que le type de séquence sont:
- id (chaîne): Identifiant de vidéo
- title (chaîne): Titre de la vidéo
- url (chaîne): URL de la vidéo
- ext (chaîne): Extension du fichier de la vidéo
- alt_title (chaîne): Titre secondaire de la vidéo.
- display_id (chaîne): Un autre identifiant pour la vidéo
- uploader (chaîne): Nom complet de l'expéditeur de la vidéo
- license (chaîne): Nom de la licence de la vidéo
- creator (chaîne): Créateur de la vidéo
- release_date (chaîne): La date (AAAAMMJJ) à laquelle la vidéo a été diffusée
- timestamp (numérique): Horodatage UNIX du moment où la vidéo est devenue disponible
- upload_date (chaîne): Date de téléchargement de la vidéo (AAAAMMJJ)
- uploader_id (chaîne): Pseudo ou identifiant de l'expéditeur de la vidéo
- channel (chaîne): Nom complet de la chaîne sur laquelle la vidéo est téléchargée
- channel_id (chaîne): Id de la chaîne.
- location (chaîne): Lieu physique où la vidéo a été filmée
- duration (numérique): Durée de la vidéo en secondes
- view_count (numérique): Nombre d'utilisateurs qui ont regardé la vidéo sur la plateforme
- like_count (numérique): Nombre d'évaluations positives de la vidéo
- dislike_count (numérique): Nombre d'évaluations négatives de la vidéo
- repost_count (numérique): Nombre de reposts de la vidéo
- average_rating (numérique): Note moyenne donnée par les utilisateurs, l'échelle utilisée dépend de la page web
- comment_count (numérique): Nombre de commentaires sur la vidéo
- age_limit (numérique): Restriction d'âge pour la vidéo (années)
- is_live (boolean): Si cette vidéo est un flux en direct ou une vidéo de longueur fixe
- start_time (numérique): Temps en secondes où la copie doit commencer, comme spécifié dans l'URL
- end_time (numérique): Temps en secondes où la copie doit se terminer, comme spécifié dans l'URL
- format (chaîne): Une description du format lisible par l'homme
- format_id (chaîne): Code de format spécifié par --format
- format_note (chaîne): Informations complémentaires sur le format
- width (numérique): Largeur de la vidéo
- height (numérique): Hauteur de la vidéo
- resolution (chaîne): Description textuelle de la largeur et de la hauteur
- tbr (numérique): Débit binaire moyen de l'audio et de la vidéo en KBit/s
- abr (numérique): Débit binaire audio moyen en KBit/s
- acodec (chaîne): Nom du codec audio utilisé
- asr (numérique): Taux d'échantillonnage audio en Hertz
- vbr (numérique): Débit binaire vidéo moyen en KBit/s
- fps (numérique): Fréquence d'images (Frame par seconde)
- vcodec (chaîne): Nom du codec vidéo utilisé
- container (chaîne): Nom du format du conteneur
- filesize (numérique): Le nombre d'octets, s'il est connu à l'avance
- filesize_approx (numérique): Une estimation du nombre d'octets
- protocol (chaîne): Le protocole qui sera utilisé pour le téléchargement proprement dit
- extractor (chaîne): Nom de l'extracteur
- extractor_key (chaîne): Nom clé de l'extracteur
- epoch (numérique): Unix epoch when creating the file
- autonumber (numérique): Numéro à cinq chiffres qui sera augmenté à chaque téléchargement, en commençant par zéro
- playlist (chaîne): Nom ou identifiant de la playlist qui contient la vidéo
- playlist_index (numérique): Index de la vidéo dans la playlist, complété par des zéros de tête en fonction de la longueur totale de la playlist
- playlist_id (chaîne): Identifiant de la playlist
- playlist_title (chaîne): Titre de la playlist
- playlist_uploader (chaîne): Nom complet de l'uploader de la playlist
- playlist_uploader_id (chaîne): Pseudonyme ou identifiant de l'uploader de la playlist
Disponible pour la vidéo qui appartient à un chapitre ou à une section logique :
- chapter (chaîne): Nom ou titre du chapitre auquel la vidéo appartient.
- chapter_number (numérique): Numéro du chapitre auquel la vidéo appartient.
- chapter_id (chaîne): Id du chapitre auquel la vidéo appartient.
Disponible pour la vidéo qui est un épisode d'une série ou d'un programme :
- series (chaîne): Titre de la série ou du programme auquel l'épisode vidéo appartient
- season (chaîne): Titre de la saison à laquelle l'épisode vidéo appartient.
- season_number (numérique): Numéro de la saison à laquelle l'épisode vidéo appartient.
- season_id (chaîne): Id de la saison à laquelle l'épisode vidéo appartient.
- episode (chaîne): Titre de l'épisode vidéo.
- episode_number (numérique): Numéro de l'épisode vidéo dans la saison.
- episode_id (chaîne): Id de l'épisode vidéo.
Disponible pour le média qui est une piste ou une partie d'un album de musique :
- track (chaîne): Titre de la piste.
- track_number (numérique): Numéro de la piste dans un album ou un disque.
- track_id (chaîne): Id de la piste.
- artist (chaîne): Artiste(s) de la piste.
- genre (chaîne): Genre(s) de la piste.
- album (chaîne): Titre de l'album auquel appartient la piste.
- album_type (chaîne): Type de l'album
- album_artist (chaîne): Liste de tous les artistes figurant sur l'album.
- disc_number (numérique): Numéro du disque ou autre support physique auquel la piste appartient
- release_year (numérique): Année (YYYY) de sortie de l'album
Chaque séquence susmentionnée, lorsqu'elle est référencée dans un modèle de sortie, sera remplacée par la valeur réelle correspondant au nom de la séquence. Notez que la présence de certaines des séquences n'est pas garantie, car elles dépendent des métadonnées obtenues par un extracteur particulier. Ces séquences seront remplacées par "NA".
Par exemple pour -o %(title)s-%(id)s.%(ext)s et une vidéo mp4 avec le titre youtube-dl test video et l'id BaW_jenozKcj, cela résultera en un fichier youtube-dl test video-BaW_jenozKcj.mp4 créé dans le répertoire courant.
Pour les séquences numériques, vous pouvez utiliser un formatage en rapport avec les chiffres, par exemple, %(view_count)05d donnera une chaîne de caractères avec un compte de vues rempli de zéros jusqu'à 5 caractères, comme dans 00042.
Les modèles de sortie peuvent également contenir un chemin hiérarchique arbitraire, par exemple -o '%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' qui aura pour résultat de télécharger chaque vidéo dans un répertoire correspondant à ce modèle de chemin. Tout répertoire manquant sera automatiquement créé pour vous.
Pour utiliser des pourcentages littéraux dans un modèle de sortie, utilisez "%%". Pour sortir sur stdout, utilisez -o -.
Le modèle par défaut actuel est %(title)s-%(id)s.%(ext)s.
Dans certains cas, vous ne voulez pas de caractères spéciaux tels que 中, espaces, ou &, comme par exemple lors du transfert du nom de fichier téléchargé vers un système Windows ou le nom de fichier par un canal non sécurisé 8bit. Dans ces cas, ajoutez le drapeau -restrict-filenames pour obtenir un titre plus court :
Modèle de sortie et fichiers batch Windows
Si vous utilisez un modèle de sortie dans un fichier batch Windows, vous devez alors échapper les caractères en pourcentage (%) en les doublant, de sorte que -o "%(title)s-%(id)s.%(ext)s" devienne -o "%%(title)s-%%(id)s.%%(ext)s". Cependant, vous ne devez pas toucher aux "%" qui ne sont pas des caractères simples, par exemple les variables d'environnement pour l'expansion doivent rester intactes : -o "C:\%HOMEPATH%\Desktop\%%(title)s.%%(ext)s".
Exemples de modèles de sortie
Notez que sur Windows, vous devrez peut-être utiliser des guillemets doubles au lieu de guillemets simples.
$ youtube-dl --get-filename -o '%(title)s.%(ext)s' BaW_jenozKc youtube-dl test video _ä↭𝕐.mp4 # Toutes sortes de personnages bizarres
$ youtube-dl --get-filename -o '%(title)s.%(ext)s' BaW_jenozKc --restrict-filenames youtube-dl_test_video_.mp4 # Un simple nom de fichier
# Télécharger les vidéos de la playlist de YouTube dans un répertoire séparé indexé par ordre des vidéos dans une playlist $ youtube-dl -o '%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re
# Téléchargez toutes les listes de lecture de la chaîne/utilisateur YouTube en gardant chaque playlist dans un répertoire séparé : $ youtube-dl -o '%(uploader)s/%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s' https://www.youtube.com/user/TheLinuxFoundation/playlists
# Téléchargez le cours Udemy en gardant chaque chapitre dans un répertoire séparé sous le répertoire MyVideos de votre domicile $ youtube-dl -u user -p password -o '~/MyVideos/%(playlist)s/%(chapter_number)s - %(chapter)s/%(title)s.%(ext)s' https://www.udemy.com/java-tutorial/
# Télécharger la saison entière de la série en gardant chaque série et chaque saison dans un répertoire séparé sous C:/MyVideos $ youtube-dl -o "C:/MyVideos/%(series)s/%(season_number)s - %(season)s/%(episode_number)s - %(episode)s.%(ext)s" https://videomore.ru/kino_v_detalayah/5_sezon/367617
# Diffuser la vidéo en cours de téléchargement sur stdout $ youtube-dl -o - BaW_jenozKc
SÉLECTION DU FORMAT
Par défaut, youtube-dl essaie de télécharger la meilleure qualité disponible, c'est-à-dire que si vous voulez la meilleure qualité, vous n'avez pas besoin de passer par des options spéciales, youtube-dl la devinera pour vous par par défaut.
Mais parfois, vous voudrez télécharger dans un format différent, par exemple lorsque vous êtes sur une connexion lente ou intermittente. Le mécanisme clé pour y parvenir est ce que l'on appelle la sélection de format, qui vous permet de spécifier explicitement le format souhaité, de sélectionner des formats en fonction d'un ou plusieurs critères, de définir des priorités et bien plus encore.
La syntaxe générale pour la sélection du format est --format FORMAT ou plus court -f FORMAT où FORMAT est une expression de sélection, c'est-à-dire une expression qui décrit le ou les formats que vous souhaitez télécharger.
Le cas le plus simple est de demander un format spécifique, par exemple avec "f 22" vous pouvez télécharger le format avec un code de format égal à 22. Vous pouvez obtenir la liste des codes de format disponibles pour une vidéo particulière en utilisant les formats "-liste" ou "-F". Notez que ces codes de format sont spécifiques à l'extracteur.