Passer au player
Passer au contenu principal
Passer au pied de page
Rechercher
Se connecter
Regarder en plein écran
2
Favori
Partager
Ajouter à la playlist
Signaler
Comment télécharger une vidéo Youtube avec du code - Tutoriel Web Scraping
Pierre Miniggio
Suivre
13/10/2024
Le code montré dans la vidéo :
https://github.com/pierreminiggio/yt1d-api
Comment automatiser une chaîne Youtube : https://www.youtube.com/watch?v=kl3j6yyydQg
Web scraping Facebook :
https://www.youtube.com/watch?v=UsmybftE36M
Tutoriel web scraping sous-titres Youtube :
https://www.youtube.com/watch?v=kJs7R_3mXYU
Catégorie
📚
Éducation
Transcription
Afficher la transcription complète de la vidéo
00:00
Il y a trois ans, j'avais posté une vidéo pour montrer comment j'avais automatisé une chaîne YouTube.
00:05
Et le but de cette chaîne YouTube, c'était de poster une vidéo automatiquement chaque jour,
00:09
qui montrait toutes les vidéos YouTube que j'avais regardées dans la même journée.
00:13
Et pour automatiser cette chaîne YouTube, j'avais donc besoin de télécharger les vidéos YouTube.
00:17
Pour faire ça, j'utilisais un logiciel qui s'appelait YouTubeDL,
00:21
qui est sur le site youtubeDL.org,
00:23
mais qui malheureusement ne fonctionne plus parce que c'est un site qui a été bloqué
00:28
suite à une décision légale et que je ne peux donc plus l'utiliser.
00:31
Donc maintenant, il va falloir que je trouve un autre moyen de télécharger des vidéos sur YouTube.
00:35
Pour télécharger des vidéos sur YouTube, il y a plein de façons de faire ça.
00:38
On peut faire ça avec un paquet de logiciels différents qui existent,
00:42
on peut faire ça avec un paquet de sites.
00:43
Parce que par exemple, si on tape une petite recherche ici sur Google,
00:46
on voit qu'il y a beaucoup de sites qui permettent de le faire.
00:49
Et ce que je vais faire dans cette vidéo, c'est que je vais automatiser un de ces sites
00:52
pour pouvoir télécharger une vidéo YouTube automatiquement avec du code.
00:57
Le site que je vais utiliser, c'est yt1d.com.
01:02
Et comme on voit par ici, on peut entrer YouTube, appuyer sur le bouton Rechercher.
01:07
Et puis après, une fois que ça a trouvé, on peut choisir la qualité de la vidéo, puis télécharger.
01:12
Pour faire ça, je vais utiliser une technique qui s'appelle du web scraping.
01:14
J'en ai déjà parlé dans plusieurs de mes vidéos, comme par exemple mes deux vidéos sur Facebook
01:18
et une vidéo sur laquelle je récupère le sous-titre du code.
01:22
D'ailleurs, cette vidéo-là, elle va être très similaire avec ce qu'on va faire aujourd'hui.
01:25
Et le web scraping, ce que ça consiste, ça va être de pouvoir automatiser un navigateur web
01:30
qui lui va pouvoir se balader sur un site Internet, qui dans notre cas de figure sera yt1d.com.
01:35
Pour faire ça, comme dans beaucoup d'autres vidéos que j'ai faites ou dont je vous ai parlé,
01:39
on va utiliser la librairie Puppeteer, qui s'utilise en Node.js,
01:42
qui va me permettre de pouvoir lancer un Chromium,
01:45
qui est le navigateur sur lequel Google Chrome ainsi que beaucoup d'autres navigateurs sont basés.
01:50
Il se trouve que j'ai déjà écrit le code pour faire exactement tout ce que j'ai besoin de faire dans cette vidéo,
01:54
mais je vais juste vous montrer au fur et à mesure qu'est-ce qui se passe quand je l'exécute certains bouts du code.
02:00
Donc, première chose qu'on va faire, c'est qu'on va devoir lancer un navigateur.
02:04
Je vais juste coller ces trois petites lignes de code pour faire attendre le navigateur pour que vous puissiez voir ce qui se passe,
02:09
et je vais le lancer.
02:11
Donc là, on va utiliser awaitPuppeteerLaunch avec des options,
02:15
et on va ensuite ouvrir une page.
02:18
Et si je lance ça, on va avoir un navigateur qui va s'ouvrir.
02:22
Vous voyez, j'ai un navigateur avec une page vide.
02:26
Maintenant, ce qu'on va faire, une fois qu'on a la page, on va aller se déplacer sur le site.
02:30
Pour ça, on peut utiliser page.goto.
02:33
Et si on relance le code, on va pouvoir voir qu'on va naviguer sur le site.
02:40
Et on y est, on est sur le site.
02:42
Et ensuite, le but, ça va être d'entrer l'URL en question ici, dans ce sélecteur.
02:50
Pour faire ça, on peut aller récupérer l'élément HTML,
02:55
et on peut essayer de trouver ce qui permet de le déterminer.
02:57
Ici, on voit qu'il y a un ID qui est textURL,
02:59
qui est ce que je vais pouvoir utiliser pour pouvoir localiser cet élément sur la page.
03:04
Donc on voit que c'est ce que je fais ici, je récupère l'ID textURL,
03:08
j'attends que je le voie sur la page,
03:11
et ensuite, je le remplis.
03:13
Là ici, en modifiant la valeur.
03:15
Et une fois qu'on a ça, on va pouvoir se rendre compte que le texte est apparu sur la page.
03:24
Je vais le lancer pour vous montrer, après avoir fermé le code.
03:31
Et vous voyez, l'URL est bien ici.
03:33
Ensuite, la prochaine étape, c'est de cliquer sur le bouton Rechercher, automatiquement évidemment.
03:38
Donc une fois de plus, on va regarder quel est un moyen de déterminer ce bouton.
03:44
Et on voit que c'est un nouvel ID qui est ButtonSubmit.
03:48
ButtonSubmit qui est ici, et ensuite on va cliquer.
03:52
Je vais vous montrer ce que ça donne dès qu'on fait ça.
03:58
Donc on a cliqué, et on arrive maintenant sur cette page où on a les différentes qualités.
04:03
Sauf que moi, la qualité que je veux, c'est le 1080p.
04:05
Donc on continue dans la même logique, on va regarder qu'est-ce qui se passe pour déterminer quel bouton est celui-là.
04:11
Et on voit qu'il y a le DataFquality128 qui peut être un moyen de le déterminer, et FTypeMP4.
04:18
On peut se douter que logiquement ces deux valeurs devraient correspondre à celui-là.
04:23
Au départ, j'avais pensé utiliser FQuality128 tout seul,
04:28
mais le problème c'est que l'audio qui est un peu plus haut ici, il a la même valeur ici.
04:32
Donc on a vraiment besoin de ces deux éléments déterminants.
04:36
Pour faire ça, une fois de plus dans le code, vous allez voir que c'est ici le FQuality128 et le TypeMP4.
04:44
Sauf que dans mon cas, j'ai rajouté quelque chose d'un peu différent.
04:46
J'ai aussi rajouté le fait qu'on scrolle sur la page, et on attend un petit peu.
04:51
Ce qui va permettre de laisser du temps à charger.
04:54
Et je vais aussi donner un petit peu plus de temps, parce que j'ai remarqué des fois la page met un petit peu de temps à charger.
05:00
Donc je fais un système où on essaie une première fois de trouver cet élément.
05:04
Et si on ne le voit pas, on attend 10 secondes et on réessaye deux fois de plus.
05:09
Ce qui permet de donner assez de temps pour être sûr que ça fonctionne très bien.
05:13
Et donc là, ce qu'on va pouvoir faire, c'est qu'on attend juste après ici, et vous allez voir ce qu'il se passe.
05:19
Une fois qu'on a cliqué sur ce bouton.
05:28
Et on voit que ça a cliqué.
05:30
Sauf que vous voyez, ça n'a pas marché du premier coup.
05:34
Donc on va devoir attendre une deuxième fois que ça reclique.
05:40
Ça a recliqué, et là on voit qu'il y a cette nouvelle pop-up qui existe.
05:44
Et une fois qu'elle est ouverte, cette pop-up, on voit qu'il y a un bouton Download Now.
05:48
Et si on regarde sur ce bouton, on voit qu'il y a un ID ici, qui permet de le récupérer.
05:53
A Download URL, et on voit qu'on a le href qui est un lien de téléchargement directement vers la vidéo.
05:59
Pour montrer ça, je vais l'ouvrir dans un nouvel onglet.
06:01
Et vous voyez bien, la vidéo est téléchargée.
06:05
Donc la suite du code, c'est tout simplement ça.
06:08
C'est qu'on vérifie qu'on récupère bien un bouton ici.
06:13
Et dès qu'on le trouve, ce bouton, on va récupérer le href.
06:17
Et notre href, ça sera le lien que l'on va ensuite retourner à la fin de notre code.
06:22
Ce qui fait que maintenant, si je lance mon code.
06:26
On va voir le navigateur qui s'ouvre.
06:29
Ça scrolle.
06:32
Ça y clique.
06:34
On voit le bouton téléchargement.
06:36
Et on voit que le lien de téléchargement de vidéo est retourné.
06:39
Donc voilà comment télécharger automatiquement une vidéo YouTube à partir du code.
06:45
A noter à la nuance près, que ce que j'ai récupéré actuellement, c'est uniquement le lien de téléchargement.
06:51
Donc après, si on voudrait télécharger en fonction du langage qu'on utilise, de comment on traite ce lien.
06:55
Il y a diverses manières de télécharger une vidéo à partir d'un lien.
06:58
Mais à partir de ça, on peut télécharger la vidéo et en faire ce qu'on veut avec notre code.
07:03
Ensuite, une autre chose que j'ai envie de faire avec ce code.
07:05
C'est que là, je vois que je l'exécute en ligne de commande.
07:07
Mais mon code, je l'ai hébergé ensuite sur GitHub.
07:10
Grâce à un système qui s'appelle des actions.
07:12
Ce qui me permet en fait, directement depuis GitHub, de pouvoir télécharger le lien de la vidéo.
07:17
Donc là vous voyez, j'ai l'action get link.
07:19
Et après, je peux lancer ça.
07:21
Et ensuite, je récupère le lien vers ce fichier.
07:24
Pour faire ça, c'est quelque chose que je peux faire avec un workflow GitHub.
07:28
Donc il y a le fichier Yamed ici, qui montre tout le processus.
07:32
Et c'est comme ça que je récupère le lien.
07:34
D'ailleurs, GitHub, j'en ai parlé dans d'autres de mes vidéos.
07:38
Donc j'ai un tutoriel ici, qui montre comment créer une action GitHub.
07:43
Donc je vous invite à aller la voir, si ce sujet là vous intéresse.
07:46
Et voilà.
07:48
Bon, c'était Pierre, j'espère que ça vous a plu.
07:50
Et sur ce, je vous dis à la prochaine.
07:52
Allez, salut salut !
Recommandations
1:24
|
À suivre
Comment télécharger une vidéo Youtube avec VLC
01net
09/08/2019
15:26
Comment automatiser une chaîne Youtube
Pierre Miniggio
17/05/2021
1:14
Comment télécharger une vidéo YouTube avec Freemake Video
Clubic
14/10/2016
4:49
Traduire automatique ses vidéos en anglais (et dans 59 autres langues) grâce à l’ia (Rask.ai)
Labo Des Réseaux
07/08/2023
1:34
Comment télécharger une vidéo YouTube avec Free YouTube Download
Clubic
12/10/2016
1:01
YouTube : comment changer la page d'accueil de sa chaîne
Gentside
11/03/2022
1:08
Tuto : comment télécharger une vidéo en streaming avec Baidu browser
Clubic
07/08/2016
10:00
Explications du Site Guinchez
CRTP
06/03/2017
2:48
Comment télécharger des vidéos YouTube pour les regarder hors-ligne ?
Phonandroid.com
22/02/2022
1:13
Comment télécharger une vidéo YouTube avec Freemake Video Downloader ?
Clubic
07/08/2016
14:41
LE FUTUR
MrAntoineDaniel
17/12/2016
2:35
STOCK
MrAntoineDaniel
17/12/2016
3:09
J'ai regardé "Feint - Farcall | Feint" et d'autres vidéos
Pierre Miniggio
aujourd’hui
2:50
J'ai regardé "China Resurrects Confucius For Lame Propaga | China Fact Chasers" et d'autres vidéos
Pierre Miniggio
hier
2:52
J'ai regardé "China Unveils Mosquito Sized Military Drones! We're | serpentza" et d'autres vidéos
Pierre Miniggio
il y a 4 jours
1:45
J'ai regardé "10 SEPTEMBRE : La VÉRITÉ sur la PROCHAINE | Actu Réfractaire" et d'autres vidéos
Pierre Miniggio
27/07/2025
1:04
J'ai regardé "Comment la politique m’a forgée | Thaïs d'Escufon" et d'autres vidéos
Pierre Miniggio
26/07/2025
0:18
J'ai regardé "Le secteur de la tech qui recrute encore | Benjamin Code" et d'autres vidéos
Pierre Miniggio
24/07/2025
1:52
J'ai regardé "Ligne fibre optique débranchée #fibreopti | TECH FIBRE OPTIQUE" et d'autres vidéos
Pierre Miniggio
22/07/2025
0:33
J'ai regardé "Nose piercing in Nepal Jewelry Shop(Pancha & Son's | supernepal" et d'autres vidéos
Pierre Miniggio
21/07/2025
1:10
J'ai regardé "Toute la vérité, PARTIE 3 | Thaïs d'Escufon" et d'autres vidéos
Pierre Miniggio
20/07/2025
1:01
J'ai regardé "Doing to dangerous places in Greece | Vlad Ncl" et d'autres vidéos
Pierre Miniggio
18/07/2025
0:43
J'ai regardé "Every Major Tyler1 Outbreak | CONULON" et d'autres vidéos
Pierre Miniggio
16/07/2025
0:19
J'ai regardé "appropriation culturelle ? | Capitaine Morgan" et d'autres vidéos
Pierre Miniggio
09/07/2025
0:32
J'ai regardé "Panchayat 🤚Vidhayak dance 🔥🔥🔥🥵 #p | Deshi Banjara" et d'autres vidéos
Pierre Miniggio
06/07/2025