L'idée
J'ai découvert grace à Korben le soft Youtube-dl qui permet de simplement télécharger (en ligne de commande ou avec une interface visuelle) une vidéo Youtube ou juste sa bande son . J'ai voulu automatiser tout cela avec différents outils .
Fonctionnement
Dépendances logicielles
Pour faire fonctionner tout ça j'utilise plusieurs choses :
- youtube-dl
- IFTT
- Dropbox(fonctionne aussi avec le drive de Google)
- FFMPEG
- Python 3
Etape 1 : Créer une "recette" IFTT
La première étape est de créer une "recette" IFTT qui va faire une chose simple :
- Si je clique sur "A regarder plus tard" sur Youtube –> Rajoute l'URL de la vidéo dans un fichier dl.txt sur ma dropbox
Pour cela il faut autoriser IFTT à accéder à votre compte Youtube + votre compte Dropbox. Pas de panique il va vous simplifier la tâche en vous proposant au bon moment de le faire .
Etape 2 : Installer les dépendances nécessaires
Pour cela rien de plus simple je vous renvoi vers les pages correspondantes pour youtube-dl et FFMPEG (qui va nous servir pour obtenir des mp3)
Personnellement sur Windows l’exécutable n'a jamais fonctionné pour youtube-dl et j'ai donc utilisé le "pip install youtube-dl" dans python comme expliqué sur leur Github
Script Python pour rendre ça automatique
Pour automatiser tout cela j'ai utilisé un script Python simple :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | from __future__ import unicode_literals import youtube_dl #Ouverture du fichier d'URL de la dropbox fichier = open("dl.txt", "r") #Comptage nombre de ligne nbLine = 0 for line in fichier: nbLine += 1 print (nbLine) #Lecture fichier pour recup URL + DL fichier.seek(0) while nbLine > 0: url = fichier.readline() ydl_opts = { 'format': 'bestaudio/best', 'postprocessors': [{ 'key': 'FFmpegExtractAudio', 'preferredcodec': 'mp3', 'preferredquality': '192', }], 'quiet': True, 'restrictfilenames': True} with youtube_dl.YoutubeDL(ydl_opts) as ydl: ydl.download([url]) nbLine -=1 fichier.close() #ré-ouverture en ecriture pour ecraser le contenu fichier = open("dl.txt", "w") fichier.close() |
Une fois que vous avez crée votre script pensez à l'enregistrer dans le même dossier que le dl.txt (donc normalement dans le dossier IFTT/"nom que vous avez donné" de votre Dropbox
Créer une tache planifiée
Maintenant il ne vous reste plus qu'a créer une tâche planifié de votre choix dans votre OS qui exécutera simplement le script a un moment donné (j'ai personnellement mis le script tous les jours a 23h59) pour qu'il aille télécharger les nouveaux morceaux choisis et vider la liste (pour ne pas télécharger en double)
Voilà voilà vous avez terminé et pouvez profiter de vos mp3 tranquillement (attention à utiliser seulement sur des vidéos avec une bande son libre de droits !