Comment utiliser youtube-dl --cookies

1

Comment utiliser l' --cookiesoption youtube-dlpour télécharger une vidéo Youtube? Quelqu'un peut-il fournir un exemple concret montrant comment obtenir les cookies appropriés pour Youtube et les placer dans le format approprié youtube-dl?

Contexte: je souhaite télécharger une vidéo privée sur Youtube. Pour diverses raisons, la méthode de connexion à mon compte Google est complexe et implique une authentification à deux facteurs et n'est pas prise en charge par youtube-dlles options de ligne de commande existantes. Par conséquent, il semble que le meilleur moyen consiste à se connecter manuellement dans mon navigateur, à obtenir les cookies d'authentification d'une manière ou d'une autre et à utiliser l' --cookiesoption, mais je ne trouve pas d'exemple concret sur la façon de procéder.

DW
la source
Avez-vous essayé de générer un mot de passe d'application dans votre tableau de bord de compte Google et de l'utiliser lorsque vous fournissez vos informations d'identification à YouTube-dl?
wateroverflow9102
1
@ wateroverflow9102, non! C'est une excellente idée, merci pour la suggestion.
DW
Je pense que la méthode des cookies fonctionnerait également, mais cela pourrait s'avérer être une solution à plus long terme puisque vous n'auriez pas à répéter ce processus de temps en temps après l'expiration de la session ...
wateroverflow9102

Réponses:

2

Une fois que vous avez obtenu les cookies, il vous suffit de lancer youtube-dl --cookies /pathtocookiefile

Si vous utilisez Chrome et acceptez les plug-ins tiers pour lire vos cookies.
Essayez juste ce cookie.txt , ouvrez youtube puis cliquez sur le plugin cookie.txt.
Un clic de plus, vous pouvez télécharger le fichier de cookie pour un onglet ou pour tous. entrez la description de l'image ici

Si vous voulez le faire manuellement dans Chrome. F12> Application> Stockage> Cookies.
Vous devez convertir la liste de cookies enNetscape format cookies file

#domain          HTTP/Secure    Expires      Name Value  
.youtube.com     TRUE/FALSE    1548523767    GPS    1
maP1E bluE
la source
2

Bien que cela puisse ne pas fonctionner spécifiquement pour YouTube, je souhaitais mettre en avant une approche plus simple qui fonctionne bien pour youtube-dltélécharger à partir d'un site qui nécessite une connexion (et utilise des cookies pour suivre la session).

Edit: Malheureusement, YouTube dépend des cookies installés dans plusieurs domaines . Cette approche ne fonctionnera donc probablement pas dans ce domaine.

YouTube-dl a une option appelée--add-header :

--add-header FIELD:VALUE         Specify a custom HTTP header and its value, separated by a colon ':'. You can use this option
                                 multiple times

Les cookies sont finalement simplement soumis au serveur sous forme d’en-têtes HTTP, il vous suffit donc de définir l’en- Cookietête de la requête. Cette méthode est également un peu plus facile que d'extraire un fichier cookie d'un navigateur moderne, en particulier du fait que ces derniers ont tendance à être cryptés et que les utilisateurs se tournent souvent vers des outils tiers douteux pour extraire ces données.

Voici un exemple d'utilisation:

youtube-dl --add-header "Cookie:COOKIE_STRING_EXTRACTED_FROM_BROWSER" "https://website-that-hosts.example/the-video-you-want"

Pour extraire la valeur de l'en-tête du cookie:

  1. Ouvrez le site Web à partir duquel vous souhaitez télécharger
  2. S'identifier
  3. Ouvrez l'inspecteur de réseau de votre navigateur
  4. Recharge la page
  5. Recherchez la toute première demande faite à ce site Web et cliquez dessus, puis consultez les en-têtes de la demande.
  6. Copiez la valeur de chaîne entière de l'en- Cookietête, mis en évidence dans cette image:

    Extraction de l'en-tête du cookie à partir de Google Chrome

  7. Collez cette valeur dans l'exemple de commande ci-dessus à remplacer COOKIE_STRING_EXTRACTED_FROM_BROWSER(à l'intérieur des guillemets)

Cela fonctionne bien pour télécharger des épisodes complets à partir de sites nécessitant une connexion par fournisseur de câble.

argenterie
la source
Brillant! Merci pour le tuyau
Ode