IMHO Je ne pense pas que cette question soit un doublon de celui-là pour ces raisons:
Voyons maintenant plus d'arguments (entre parenthèses):
J'essaie de télécharger des vidéos YouTube d'abord par Firefox + Video DownloadHelper, puis par VLC et enfin par le programme youtube-dl et quelque chose les bloque.
( L'autre: " J'utilise youtube-dl pour télécharger des vidéos à regarder plus tard hors connexion ", cette fois encore, cette question porte sur le téléchargement. blocage dans YouTube indépendamment de l'application et de l'autre, dans une seule application (youtube-dl) )
Sur les écrans de description, je ne vois aucune restriction concernant le téléchargement.
( Ceci n'est pas mentionné dans l'autre question. )
Un exemple: j'essaye de télécharger 2 vidéos avec la même catégorie/licence, la première fonctionne bien et la seconde renvoie une exception:
luis@jupiter:~$ youtube-dl "https://www.youtube.com/watch?v=wo6Sq1h2DI4"
[youtube] wo6Sq1h2DI4: Downloading webpage
[youtube] wo6Sq1h2DI4: Downloading video info webpage
[youtube] wo6Sq1h2DI4: Extracting video information
[youtube] wo6Sq1h2DI4: Downloading MPD manifest
WARNING: Requested formats are incompatible for merge and will be merged into mkv.
[download] Destination: SÂNSCRITO - Aula 6 (Consoantes Mudas Dentais) com Jonas Masetti-wo6Sq1h2DI4.f137.mp4
[download] 100% of 142.54MiB in 04:11
[download] Destination: SÂNSCRITO - Aula 6 (Consoantes Mudas Dentais) com Jonas Masetti-wo6Sq1h2DI4.f251.webm
[download] 100% of 8.75MiB in 00:16
[ffmpeg] Merging formats into "SÂNSCRITO - Aula 6 (Consoantes Mudas Dentais) com Jonas Masetti-wo6Sq1h2DI4.mkv"
Deleting original file SÂNSCRITO - Aula 6 (Consoantes Mudas Dentais) com Jonas Masetti-wo6Sq1h2DI4.f137.mp4 (pass -k to keep)
Deleting original file SÂNSCRITO - Aula 6 (Consoantes Mudas Dentais) com Jonas Masetti-wo6Sq1h2DI4.f251.webm (pass -k to keep)
luis@jupiter:~$ youtube-dl "https://www.youtube.com/watch?v=BbbhZl8xqVY"
[youtube] BbbhZl8xqVY: Downloading webpage
[youtube] BbbhZl8xqVY: Downloading video info webpage
[youtube] BbbhZl8xqVY: Extracting video information
[youtube] BbbhZl8xqVY: Downloading js player en_US-vflHuW2fm
ERROR: Signature extraction failed: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 905, in _decrypt_signature
video_id, player_url, s
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 820, in _extract_signature_function
res = self._parse_sig_js(code)
File "/usr/lib/python2.7/dist-packages/youtube_dl/extractor/youtube.py", line 883, in _parse_sig_js
initial_function = jsi.extract_function(funcname)
File "/usr/lib/python2.7/dist-packages/youtube_dl/jsinterp.py", line 241, in extract_function
raise ExtractorError('Could not find JS function %r' % funcname)
ExtractorError: Could not find JS function u'Ny'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
(caused by ExtractorError(u"Could not find JS function u'Ny'; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
S'agit-il d'une restriction YouTube, d'un problème d'encodage vidéo ou d'un problème de signature Ubuntu? S'il s'agit d'une restriction YouTube, s'agit-il d'une restriction pour toutes les vidéos YouTube ou cette restriction est-elle sélective, par exemple pour les vidéos récemment téléchargées, mais pas pour les vidéos téléchargées il y a des années?
Le résultat de l'autre question:
ERROR: Unable to extract info section; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type youtube-dl -U to update.
( La sortie est un peu différente, n'est-ce pas? )
Enfin, il reste deux questions à prendre en compte :
La première vidéo téléchargée avec succès avec une version récemment mise à jour de youtube-dl que j’ai installée avec python-pip en utilisant python pip install youtube-dl
dans un environnement virtuel Python ( python- virtualenv ). Pour plus d'informations sur la configuration et l'utilisation d'un environnement virtuel Python, voir Comment configurer et utiliser un environnement virtuel python dans Ubuntu? .
La commande que j'ai utilisée pour afficher les formats vidéo disponibles était la suivante:
youtube-dl -F "https://www.youtube.com/watch?v=wo6Sq1h2DI4"
La commande que j'ai utilisée pour télécharger la première vidéo de YouTube était:
youtube-dl -f 18 "https://www.youtube.com/watch?v=wo6Sq1h2DI4"
La deuxième vidéo n'a pas pu être téléchargée avec youtube-dl, mais je n'ai pas abandonné. J'ai mis à niveau mon youtube-dl vers la dernière version en exécutant:
pip install --upgrade youtube-dl # inside the Python virtual environment
Je n'avais pas besoin d'utiliser Sudo
car mon environnement virtuel Python était installé dans mon propre répertoire utilisateur (~/my-Python-virtual-env
). Après la mise à niveau de youtube-dl, j'ai exécuté cette commande pour télécharger la deuxième vidéo YouTube:
youtube-dl -f 18 "https://www.youtube.com/watch?v=BbbhZl8xqVY"
Pourquoi ne pas simplement utiliser
Sudo pip install --upgrade youtube-dl
?
J'utilise Ubuntu pour échapper à la folie de la manière dont Windows installe les applications. J'installe des packages à partir des référentiels Ubuntu par défaut chaque fois que cela est possible. Dans ce cas, je sais que youtube-dl est un programme Python. Je peux donc installer localement la dernière version de youtube-dl dans un environnement virtuel Python sans endommager mon système de fichiers.
Une autre alternative consiste à installer le paquet snap youtube-dl:
Sudo snap install youtube-dl # start with snap run youtube-dl
Je pense que depuis lors, certaines modifications ont été apportées au service et aux applications de YouTube pour y accéder.
Vrai. Google a changé la manière d'accéder aux vidéos YouTube plus fréquemment que ce n'était le cas il y a trois ans. Par conséquent, pour que YouTube-dl soit toujours à jour, il doit également être mis à jour plus fréquemment. Au fil des ans, j'ai constaté que les vidéos de YouTube semblaient être bloquées, principalement en raison de la date à laquelle elles avaient été téléchargées.
Avant de commencer à utiliser youtube-dl, j’utilisais une extension de Firefox appelée Video DownloadHelper pour télécharger des vidéos YouTube. Je suis venu pour préférer youtube-dl car il a la plus grande probabilité de récupérer avec succès des vidéos YouTube de tous les téléchargeurs que j'ai jamais utilisés.
La possibilité de télécharger des vidéos à partir de YouTube est une bataille constante, car la société cherche à limiter l'accès au site aux méthodes qu'elle préfère. Des conditions d'utilisation de YouTube:
Vous acceptez de ne pas accéder au Contenu par le biais de technologies ou de moyens autres que les pages de lecture vidéo du Service lui-même, le Lecteur incorporable ou tout autre moyen explicitement autorisé par YouTube.
Les fabricants de youtube-dl
essaient constamment de faire correspondre les modifications apportées par YouTube, qui visent à ramener l'utilisateur à la méthode d'accès de son choix. C'est ce à quoi vous vous êtes heurté avec votre propre téléchargement.
La version de référentiel de youtube-dl
est une version ancienne 2016.02.22
et les lignes de bataille en ont depuis longtemps évolué avec la génération de rapports la plus récente :
andrew@ilium~$ youtube-dl --version
2016.08.10
La méthode recommandée pour mettre à jour youtube-dl
provient du youtube-dl
page de téléchargement , légèrement modifié pour supprimer la version du référentiel Ubuntu:
Sudo apt-get remove youtube-dl
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
Sur cette même page de téléchargement, vous verrez les instructions pour la mise à niveau avec curl et pip, utilisez celui que vous préférez car le résultat final est le même. Il est important de supprimer la version du référentiel, vous n'avez besoin que d'un seul exécutable youtube-dl
.
Remarque: Lors du test de ma propre mise à niveau du système, votre problème a été résolu de manière complète et les deux vidéos ont été téléchargées avec succès.
Si vous êtes curieux, avez regardez ici où la bataille est menée en extrayant l'adresse de la page YouTube (cette page montrant l'origine de votre erreur) et voyez les efforts nécessaires pour fournir un match décent pour un téléchargement réussi .
Références: