Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#2001 Le 19/04/2021, à 23:31

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@jlfh0816

Hello smile
J'ai beaucoup travaillé sur le code et la documentation (je suis très mauvais en anglais), et j'ai également rajouté un mode batch smile
Une nouvelle version est donc disponible: la 1.5.0 , tu peux suivre le processus habituel à savoir

ytdlmusic

puis la commande indiquée pour l'update.

Tu devrais récupérer quelque chose de ce style

~ ytdlmusic

    NAME
        ytdlmusic

    SYNOPSIS
        ytdlmusic is a command-line program to search and download music files from YouTube without use browser. 
    
    USAGE : ytdlmusic [OPTION]... [ARTIST] [SONG]

        By default, ytdlmusic searches Youtube for "[ARTIST] [SONG]" and displays the top five result and their 
        description. The selected result is downloaded in your current directory. The format used is MP3 if 
        ffmpeg is installed, OGG otherwise. The filename is [ARTIST]_[SONG].mp3/ogg to lowercase, and special 
        characters replaced by '_'. 

        Options are played in this order:
        -h, --help          : print this help text and exit
        -u, --update        : upgrade this program to latest version and exit
        -U, --full-update   : upgrade this program and the dependencies to latest version and exit
        -v, --version       : print program version and exit                     
        -y, --auto          : use automatic default choices 
        -f, --ogg           : use ogg extension even if ffmpeg is installed
        -d, --verbose       : give more output
        --batch=<path>%<bool_h>%<s>%<art_col>%<song_col>  
                            : batch mode, loop on a <path> csv file with an header <bool_h>, with separator 
                            <sep>, artist on colum number <art_col>, song aon column number <song_col>

    INFORMATION
        It may be illegal to download restricted content with this software, depending on the law in your country.                            

    Full documentation at: <https://github.com/thib1984/ytdlmusic>
    Report bugs to <https://github.com/thib1984/ytdlmusic/issues>

ytdlmusic version             : 1.5.0
youtube-search-python version : 1.4.3
youtube-dl version            : 2021.4.17
pip(3) version                : 21.0.1
Python version                : 3.8.5 (default, Jan 27 2021, 15:41:15) [GCC 9.3.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 5.8.0-50-generic

MIT Licence.
Copyright (c) 2021 thib1984.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by thib1984.

En espérant qu'elle te plaira smile

Dernière modification par thib1984 (Le 20/04/2021, à 07:13)

Hors ligne

#2002 Le 20/04/2021, à 08:43

jlfh0816

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

thib1984 a écrit :

Une nouvelle version est donc disponible: la 1.5.0 , tu peux suivre le processus habituel

Aucun problème pour installer cette nouvelle version comme tu peux le constater ci-dessous :

jlfh0816 @ Voyager1804  ~
└─ $ ▶ ytdlmusic --version
ytdlmusic version             : 1.5.0
youtube-search-python version : 1.4.3
youtube-dl version            : 2021.4.17
pip(3) version                : 9.0.1
Python version                : 3.6.9 (default, Jan 26 2021, 15:33:00) [GCC 8.4.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 4.15.0-142-generic

MIT Licence.
Copyright (c) 2021 thib1984.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by thib1984.
thib1984 a écrit :

En espérant qu'elle te plaira

... oui, pas de soucis non plus de ce côté, ton application est toujours aussi efficace et agréable à utiliser !  big_smile

thib1984 a écrit :

... et j'ai également rajouté un mode batch ...

Là, je ne connais pas : à quoi sert ce mode dans la pratique ? Aurai-tu un exemple pour me montrer ? hmm

Dernière modification par jlfh0816 (Le 20/04/2021, à 08:45)


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#2003 Le 20/04/2021, à 09:41

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@jlfh0816

La nouvelle option est :

--batch=<path>%<bool_h>%<s>%<art_col>%<song_col>  
        : batch mode, loop on a <path> csv file with an header <bool_h>, with separator 
         <sep>, artist on colum number <art_col>, song aon column number <song_col>

qui permet de boucler directement sur un fichier csv dans lequel tu aurais une colonne artiste et une colonne song

Exemple :
Soit un fichier csv dans ton répertoire courant (ici test.csv)

song_column;artist_column;unused column
limujii;above;no
nomyn;awake;use
eyazttyzaeyz;zhhezhahkzaj;inexistant
scandinavianz;avalon;information

tu peux lancer

ytdlmusic -y --batch="./test.csv"%True%";"%2%1
search "above limujii" with youtube-search-python
download https://www.youtube.com/watch?v=cUWU_T9KBk8 with youtubedl
above_limujii.mp3 is ready
search "awake nomyn" with youtube-search-python
download https://www.youtube.com/watch?v=hZQDfGX8Cu4 with youtubedl
awake_nomyn.mp3 is ready
search "zhhezhahkzaj eyazttyzaeyz" with youtube-search-python
No result, retry with other words
search "avalon scandinavianz" with youtube-search-python
download https://www.youtube.com/watch?v=B5CYUMs6-eo with youtubedl
avalon_scandinavianz.mp3 is ready

et tu récupères en sortie les fichiers mp3.

Dernière modification par thib1984 (Le 20/04/2021, à 09:44)

Hors ligne

#2004 Le 20/04/2021, à 13:14

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@ geole et @Watael :
J'ai ouvert un fil concernant ce sujet (non abouti) : Processus Swapés - script
Afin de ne pas polluer ce topic sérieux wink


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2005 Le 20/04/2021, à 13:16

jlfh0816

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

thib1984 a écrit :

... et tu récupères en sortie les fichiers mp3.

Merci d'avoir éclairer ma lanterne, je ne connaissais pas !  tongue


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#2006 Le 20/04/2021, à 13:33

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

jlfh0816 a écrit :
thib1984 a écrit :

... et tu récupères en sortie les fichiers mp3.

Merci d'avoir éclairer ma lanterne, je ne connaissais pas !  tongue

Après c'est une toute nouvelle option big_smile, que j'ai créé pour les besoins spécifiques d'un ami.

Hors ligne

#2007 Le 21/04/2021, à 06:29

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@jlfh0816

neutral Il y avait un petit bug dans ytdlmusic, mais pas sur l'utilisation classique, uniquement sur l'option --ogg/-f ou si tu n'avais pas ffmpeg installé.

Explication : la façon dont je gérais le téléchargement dans le cas d'un ffmpeg absent et/ou de l'option --ogg/-f fonctionnait mal : le type réel de fichier était un m4a, mais l'extension générée était bien un ogg.
C'est corrigé, et dorénavant tu as deux options à ta disposition :

--m4a/-f pour le téléchargement natif en m4a sans conversion
--ogg/-o pour le téléchargement/conversion en ogg,

par défaut, si ffmpeg est installé, tu seras en télchargement/conversion mp3 comme avant. Si ffmpeg n'est pas installé, quelque soit l'option, c'est le format m4a qui est utilsé car aucune conversion n'est possible.

Toujours le même mécanisme de mise à jour, une fois celui-ci réalisé je t'invite à relancer également

ytdlmusic -U

pour forcer la récupération de youtube-search python.
J'envisage une option --check/-c qui permettrait de vérifier l'existence de nouvelles versions et de prévenir également si ffmpeg n'est pas installé.

Dernière modification par thib1984 (Le 21/04/2021, à 07:39)

Hors ligne

#2008 Le 21/04/2021, à 09:09

jlfh0816

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

thib1984 a écrit :

Toujours le même mécanisme de mise à jour ...

J'ai effectué la mise à jour avec les deux commandes --full update puis avec ytdlmusic -U et ça c'est a priori bien passé mais il y a un message d'erreur de segmentation qui apparaît à chacune de ces deux commandes (voir ci-dessous, à la dernière ligne) :

jlfh0816 @ Voyager1804  ~
└─ $ ▶ ytdlmusic --full-update
Update the ytdlmusic package and the dependencies [Y/n] ? y
Try to update ytdlmusic with pip3
Update ok
Try to update youtube-search-python with pip3
Update ok
Try to update youtube-dl with pip3
Update ok
Erreur de segmentation

Le terminal affiche quand même bien la nouvelle version 1.7.0 :

jlfh0816 @ Voyager1804  ~
└─ $ ▶ ytdlmusic --version
ytdlmusic version             : 1.7.0
youtube-search-python version : 1.4.4
youtube-dl version            : 2021.4.17
pip(3) version                : 9.0.1
Python version                : 3.6.9 (default, Jan 26 2021, 15:33:00) [GCC 8.4.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 4.15.0-142-generic

MIT Licence.
Copyright (c) 2021 thib1984.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by thib1984

.
Ca n'a pas l'air bloquant car les téléchargements continuent de s'effectuer correctement (exemple ci-dessous). Peut-être un simple message d'avertissement ?

jlfh0816 @ Voyager1804  ~
└─ $ ▶ ytdlmusic --auto "Jeanette" "Por Que Te Vas"
search "Jeanette Por Que Te Vas" with youtube-search-python
download https://www.youtube.com/watch?v=uWYTTQFyt74 with youtubedl
jeanette_por_que_te_vas.mp3 is ready

Dernière modification par jlfh0816 (Le 21/04/2021, à 09:10)


Xubuntu - Voyager 18.04 et 22.04

Hors ligne

#2009 Le 21/04/2021, à 09:48

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Etrange, je n'arrive pas à reproduire en forcant un downgrade manuellement sad
Normalement un des mes test auto consiste justement à supprimer une dépendance et lancer le -U

Peut-être est-ce lié à ta version de pip (mais je ne te conseille pas d'y toucher!)
Comme tu le dis, le process s'est en réalité bien terminée (le processus a planté juste avant d'écrire "tout est ok" big_smile

Dernière modification par thib1984 (Le 21/04/2021, à 09:51)

Hors ligne

#2010 Le 21/04/2021, à 19:04

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Hello,

Je suis intéressé par ytdlmusic pour récupérer certaines raretés que je ne retrouve plus.
Mais j'ai une question :
Est-ce qu'il y a un moyen de contrôler la qualité d'encodage du mp3 ?
Je comprends bien qu'on ne peut pas surpasser celle du flux d'origine.
Mais comment cela se passe-t-il de ce coté là ? (et de 2 questions !)

Merci de tes éclairages ... et peut-être un nouvel utilisateur ...


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2011 Le 21/04/2021, à 20:47

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@Tawal

Hello smile
ytdlmusic se sert de la dépendance youtube-dl pour le téléchargement à proprement parler (à partir de l'url de la vidéo) :
Cette dernière tente de télécharger dans la meilleur qualité audio possible, puis convertit avec l'outil ffmpeg le fichier audio m4a en mp3 avec une qualité de 256kbs.
Si tu utilises l'option -o, tu resteras sur le m4a natif qui sera dans doute de meilleure qualité (mais à quel point, ca je ne le sais pas).
Je peux éventuellement ajouter une option pour forcer le 320kbs, mais je ne sais pas si cela d'une grande utilité.

Tiens moi au courant de tes demandes smile

Dernière modification par thib1984 (Le 21/04/2021, à 21:10)

Hors ligne

#2012 Le 21/04/2021, à 22:03

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Super smile

Le débit à 256Kbits/s me convient très bien wink
J'ai mis en place une extraction de CD audio automatique avec un débit mp3 à 245Kbits/s minimum : Extraction CD auto

Je vais essayer ton ytdlmusic et te donnerai des retours de son utilisation wink

Thanks a lot


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2013 Le 21/04/2021, à 22:39

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Re,

Un 1er retour d'installation et tentative de téléchargement :

$ pip3 install ytdlmusic
Collecting ytdlmusic
  Downloading https://files.pythonhosted.org/packages/54/c5/be2a5dbe0ee518d84ce2cf7f1898da41c9a002ff1cc305c0b55e6c82575e/ytdlmusic-1.7.0-py3-none-any.whl
Requirement already satisfied: youtube-dl in /usr/lib/python3/dist-packages (from ytdlmusic) (2019.1.17)
Requirement already satisfied: youtube-search-python in /home/tawal/.local/lib/python3.7/site-packages (from ytdlmusic) (1.4.5)
Requirement already satisfied: httpx in /home/tawal/.local/lib/python3.7/site-packages (from youtube-search-python->ytdlmusic) (0.17.1)
Requirement already satisfied: httpcore<0.13,>=0.12.1 in /home/tawal/.local/lib/python3.7/site-packages (from httpx->youtube-search-python->ytdlmusic) (0.12.3)
Requirement already satisfied: rfc3986[idna2008]<2,>=1.3 in /home/tawal/.local/lib/python3.7/site-packages (from httpx->youtube-search-python->ytdlmusic) (1.4.0)
Requirement already satisfied: certifi in /usr/lib/python3/dist-packages (from httpx->youtube-search-python->ytdlmusic) (2018.8.24)
Requirement already satisfied: sniffio in /home/tawal/.local/lib/python3.7/site-packages (from httpx->youtube-search-python->ytdlmusic) (1.2.0)
Requirement already satisfied: h11==0.* in /home/tawal/.local/lib/python3.7/site-packages (from httpcore<0.13,>=0.12.1->httpx->youtube-search-python->ytdlmusic) (0.12.0)
Requirement already satisfied: idna; extra == "idna2008" in /usr/lib/python3/dist-packages (from rfc3986[idna2008]<2,>=1.3->httpx->youtube-search-python->ytdlmusic) (2.6)
Installing collected packages: ytdlmusic
  The script ytdlmusic is installed in '/home/tawal/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed ytdlmusic-1.7.0

Là, ça va bien smile

$ ~/.local/bin/ytdlmusic "Syd Barett" "Opel"
search "Syd Barett Opel" with youtube-search-python
1
Syd Barrett - Opel
https://www.youtube.com/watch?v=Ch3BfpZp8PI
6:28-481,905 views
2
Syd Barrett - Opel
https://www.youtube.com/watch?v=ioyZ5ESV-bU
6:27-18,515 views
3
Syd Barrett - Octopus
https://www.youtube.com/watch?v=8k5WQnfCjmk
3:48-1,167,190 views
4
Syd Barrett - The Radio One Session (Full Album)
https://www.youtube.com/watch?v=F-BiOyHQWqM
19:59-232,903 views
5
Anthony Reynolds sings Syd Barrett: OPEL
https://www.youtube.com/watch?v=qQhIJ7X3Nww
4:48-5,799 views
Which (1-5, 0 to exit, 1 by default) ? 4
download https://www.youtube.com/watch?v=F-BiOyHQWqM with youtubedl
ERROR: F-BiOyHQWqM: YouTube said: Invalid parameters.
Unexpected error: ERROR: F-BiOyHQWqM: YouTube said: Invalid parameters.
Try to upgrade with 'ytdlmusic update' or 'ytdlmusic full-update' and retry.
ytdlmusic version             : 1.7.0
youtube-search-python version : 1.4.5
youtube-dl version            : 2019.1.17
pip(3) version                : 18.1
Python version                : 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 4.19.0-16-amd64
You can also try  to manually upgrade ytdlmusic or the dependencies
with 'pip(3) install --upgrade name_package'
If you reproduce the error : add the flag '--verbose' flag and open an issue at
https://github.com/thib1984/ytdlmusic/issues with the complete log

Aïe, une erreur et pas de téléchargement.

$ ~/.local/bin/ytdlmusic update
Unexpected error: can only concatenate str (not "NoneType") to str
Try to upgrade with 'ytdlmusic update' or 'ytdlmusic full-update' and retry.
ytdlmusic version             : 1.7.0
youtube-search-python version : 1.4.5
youtube-dl version            : 2019.1.17
pip(3) version                : 18.1
Python version                : 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 4.19.0-16-amd64
You can also try  to manually upgrade ytdlmusic or the dependencies
with 'pip(3) install --upgrade name_package'
If you reproduce the error : add the flag '--verbose' flag and open an issue at
https://github.com/thib1984/ytdlmusic/issues with the complete log
$
$ ~/.local/bin/ytdlmusic full-update
Unexpected error: can only concatenate str (not "NoneType") to str
Try to upgrade with 'ytdlmusic update' or 'ytdlmusic full-update' and retry.
ytdlmusic version             : 1.7.0
youtube-search-python version : 1.4.5
youtube-dl version            : 2019.1.17
pip(3) version                : 18.1
Python version                : 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 4.19.0-16-amd64
You can also try  to manually upgrade ytdlmusic or the dependencies
with 'pip(3) install --upgrade name_package'
If you reproduce the error : add the flag '--verbose' flag and open an issue at
https://github.com/thib1984/ytdlmusic/issues with the complete log
$

N'ayant aucune expérience avec python, je ne sais pas comment réagir.
Une petite aide serait la bienvenue smile

Merci.

Edit:
Installation et essai sur Debian Buster.
Je peux tenter sur UbuMate ...

Edit2:
un autre essai avec l'option --verbose (si ça peut aider)

$ ~/.local/bin/ytdlmusic --verbose  "Brel" "Regarde bien petit"
[debug] artist : Brel
[debug] song : Regarde bien petit
search "Brel Regarde bien petit" with youtube-search-python
1
Regarde bien petit
https://www.youtube.com/watch?v=V1WSOZbajTM
4:38-92,558 views
2
Jacques Brel   Regarde bien petit Version alternative inédite
https://www.youtube.com/watch?v=Ni1FGD3CWh0
4:29-219,030 views
3
Jacques Brel Regarde Bien Petit
https://www.youtube.com/watch?v=usGlaznMem0
4:40-58,107 views
4
Jacques Brel - Regarde bien petit
https://www.youtube.com/watch?v=aNhzgcJ3UHs
4:29-8,313 views
5
JacquesBrel   Regarde Bien Petit
https://www.youtube.com/watch?v=nMom9jMQZR4
4:34-2,337 views
Which (1-5, 0 to exit, 1 by default) ? 2
[debug] extension used : .mp3
[debug] filename found brel_regarde_bien_petit.mp3
[debug] brel_regarde_bien_petit.mp3 will be used as filename
download https://www.youtube.com/watch?v=Ni1FGD3CWh0 with youtubedl
[debug] debug youtube-dl : 
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.01.17
[debug] Python version 3.7.3 (CPython) - Linux-4.19.0-16-amd64-x86_64-with-debian-10.9
[debug] exe versions: ffmpeg 4.1.6-1, ffprobe 4.1.6-1, phantomjs 2.1.1, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] Ni1FGD3CWh0: Downloading webpage
[youtube] Ni1FGD3CWh0: Downloading video info webpage
ERROR: Ni1FGD3CWh0: YouTube said: Invalid parameters.
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 793, in extract_info
    ie_result = ie.extract(url)
  File "/usr/lib/python3/dist-packages/youtube_dl/extractor/common.py", line 508, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python3/dist-packages/youtube_dl/extractor/youtube.py", line 1688, in _real_extract
    expected=True, video_id=video_id)
youtube_dl.utils.ExtractorError: Ni1FGD3CWh0: YouTube said: Invalid parameters.

[debug] stack trace :
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 793, in extract_info
    ie_result = ie.extract(url)
  File "/usr/lib/python3/dist-packages/youtube_dl/extractor/common.py", line 508, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python3/dist-packages/youtube_dl/extractor/youtube.py", line 1688, in _real_extract
    expected=True, video_id=video_id)
youtube_dl.utils.ExtractorError: Ni1FGD3CWh0: YouTube said: Invalid parameters.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/tawal/.local/lib/python3.7/site-packages/ytdlmusic/ytdlmusic.py", line 26, in job
    filename,
  File "/home/tawal/.local/lib/python3.7/site-packages/ytdlmusic/download.py", line 61, in download_song
    ydl.extract_info(song_url, download=True)
  File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 816, in extract_info
    self.report_error(compat_str(e), e.format_traceback())
  File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 621, in report_error
    self.trouble(error_message, tb)
  File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 591, in trouble
    raise DownloadError(message, exc_info)
youtube_dl.utils.DownloadError: ERROR: Ni1FGD3CWh0: YouTube said: Invalid parameters.
Unexpected error: ERROR: Ni1FGD3CWh0: YouTube said: Invalid parameters.
Try to upgrade with 'ytdlmusic update' or 'ytdlmusic full-update' and retry.
ytdlmusic version             : 1.7.0
youtube-search-python version : 1.4.5
youtube-dl version            : 2019.1.17
pip(3) version                : 18.1
Python version                : 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
ffmpeg                        : /usr/bin/ffmpeg
OS platform                   : Linux 4.19.0-16-amd64
You can also try  to manually upgrade ytdlmusic or the dependencies
with 'pip(3) install --upgrade name_package'
If you reproduce the error : add the flag '--verbose' flag and open an issue at
https://github.com/thib1984/ytdlmusic/issues with the complete log
$

Dernière modification par Tawal (Le 21/04/2021, à 23:20)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2014 Le 21/04/2021, à 23:28

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@Tawal

Plusieurs problèmes :
- "Try to upgrade with 'ytdlmusic update' or 'ytdlmusic full-update' and retry." : ce message c'est pas à jour sad Je vais le corriger
- "ytdlmusic update" n'est donc pas une commande valide mais elle ne devrait pas crasher si violemment, je vais m'en occuper également sad
- Ton erreur vient probablement de ta version de youtube-dl un peu trop ancienne, il faut la mettre à jour

Pour ca, tu peux taper

ytdlmusic --full-update

puis ensuite

ytdlmusic -v

pour vérifier que ytdlmusic s'est bien mis à jour (tu es actuellement en 2019.1.17)

Ensuite ca devrait mieux marcher.
De mon côté je corrige les deux premiers points smile

Tiens moi au courant (je pense que je pousserai la nouvelle version demain).

EDIT : la version 1.7.1 est disponible

ytdlmusic -u

pour en profiter

Dernière modification par thib1984 (Le 21/04/2021, à 23:47)

Hors ligne

#2015 Le 22/04/2021, à 00:13

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Mais suis-je bête !
J'ai pourtant suivi le fil et je passe les options sans les tirets !

Mais au moins, tu as vu des retours d'info "pas corrects" qui peuvent déstabiliser les débutants dont je fais partie.

Donc avec les options correctement passées, tout va bien smile

$ ~/.local/bin/ytdlmusic --full-update
Update the ytdlmusic package and the dependencies [Y/n] ? Y
Try to update youtube-search-python with pip3
Update ok
Try to update youtube-dl with pip3
  The script youtube-dl is installed in '/home/tawal/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Update ok
Try to update ytdlmusic with pip3
  The script ytdlmusic is installed in '/home/tawal/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Update ok
Full-update ok
$

Plus que les essais à faire, mais je les sens bien smile

Mille mercis et quelle réactivité ! cool


Edit:
Je le sentais que je pouvais te faire confiance cool

$ ~/.local/bin/ytdlmusic --verbose  "Brel" "Regarde bien petit"
[debug] artist : Brel
[debug] song : Regarde bien petit
search "Brel Regarde bien petit" with youtube-search-python
1
Regarde bien petit
https://www.youtube.com/watch?v=V1WSOZbajTM
4:38-92,558 views
2
Jacques Brel   Regarde bien petit Version alternative inédite
https://www.youtube.com/watch?v=Ni1FGD3CWh0
4:29-219,030 views
3
Jacques Brel Regarde Bien Petit
https://www.youtube.com/watch?v=usGlaznMem0
4:40-58,107 views
4
Jacques Brel - Regarde bien petit
https://www.youtube.com/watch?v=aNhzgcJ3UHs
4:29-8,313 views
5
JacquesBrel   Regarde Bien Petit
https://www.youtube.com/watch?v=nMom9jMQZR4
4:34-2,337 views
Which (1-5, 0 to exit, 1 by default) ? 2
[debug] extension used : .mp3
[debug] filename found brel_regarde_bien_petit.mp3
[debug] brel_regarde_bien_petit.mp3 will be used as filename
download https://www.youtube.com/watch?v=Ni1FGD3CWh0 with youtubedl
[debug] debug youtube-dl : 
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2021.04.17
[debug] Python version 3.7.3 (CPython) - Linux-4.19.0-16-amd64-x86_64-with-debian-10.9
[debug] exe versions: ffmpeg 4.1.6-1, ffprobe 4.1.6-1, phantomjs 2.1.1, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] Ni1FGD3CWh0: Downloading webpage
[youtube] Ni1FGD3CWh0: Downloading player ae5b2092
[debug] Invoking downloader on 'https://r5---sn-25glen7y.googlevideo.com/videoplayback?expire=1619068668&ei=nLKAYJuzAqy2mLAP-N-H-Ao&ip=176.184.206.164&id=o-AEK0OL6hCPkCvw0fuZ9JTX3u33OsWsiMNkL-EzHwUADb&itag=251&source=youtube&requiressl=yes&mh=z1&mm=31%2C26&mn=sn-25glen7y%2Csn-h5qzen7l&ms=au%2Conr&mv=m&mvi=5&pl=18&initcwndbps=697500&vprv=1&mime=audio%2Fwebm&ns=zyeENFsXYcEFXuHUdwS1tRsF&gir=yes&clen=5160049&dur=268.721&lmt=1508120148352094&mt=1619046778&fvip=5&keepalive=yes&fexp=24001373%2C24007246&c=WEB&n=RQa2FIKEYElWieR0&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIgdQf_kd7x9BUINWDTAFIyEC5EiAX789BGz37N0SdMve0CIQDR0Hdc8O3Fkk4QdfqK2uHfrbQCjN6g8pcKpga8t6Mbgg%3D%3D&sig=AOq0QJ8wRgIhAMlDxUfFJ5O1-NVMCsEzgwjQ6zrou2D8xuYXuJUi1jM5AiEAmI2JG2PAkSB3ZOZrFp9Q__aVaIZFaAMje7KQZfyfDK4='
[download] Destination: brel_regarde_bien_petit.webm
[download] 100% of 4.92MiB in 00:07
[debug] ffmpeg command line: ffprobe -show_streams file:brel_regarde_bien_petit.webm
[ffmpeg] Destination: brel_regarde_bien_petit.mp3
[debug] ffmpeg command line: ffmpeg -y -loglevel repeat+info -i file:brel_regarde_bien_petit.webm -vn -acodec libmp3lame -b:a 256k file:brel_regarde_bien_petit.mp3
Deleting original file brel_regarde_bien_petit.webm (pass -k to keep)
[ffmpeg] Adding metadata to 'brel_regarde_bien_petit.mp3'
[debug] ffmpeg command line: ffmpeg -y -loglevel repeat+info -i file:brel_regarde_bien_petit.mp3 -c copy -metadata 'title=Regarde bien petit (Version Alternative)' -metadata date=20140913 -metadata description= -metadata comment= -metadata 'purl=https://www.youtube.com/watch?v=Ni1FGD3CWh0' -metadata 'artist=Jacques Brel' file:brel_regarde_bien_petit.temp.mp3
brel_regarde_bien_petit.mp3 is ready

Un grand MERCI à toi et vraiment bravo ! pour ton boulot.

Edit2:

Une petite barre de progression (pour le téléchargement et l'encodage) en mode "non verbose" serait la bienvenue wink

Dernière modification par Tawal (Le 22/04/2021, à 00:33)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2016 Le 22/04/2021, à 06:17

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@Tawal

Merci pour ton retour smile

Je suis bien content de voir que d'autres personnes que moi utilisent l'application, et je te remercie pour les compliments. Mais garde bien à l'esprit que ytdlmusic est avant tout un agrégateur de deux dépendances smile Après je m'amuse beaucoup car je n'y connais pas grand chose en python et je découvre plein de choses.

Pour la barre de progression, je ne vais peut-être pas pouvoir la proposer telle quelle mais je pense que je vais revoir les niveaux de logs : le mode normal n'est vraiment pas assez verbeux. Donc je pense allez vers quelque chose du style -v pour verbose, -q pour quiet, et aucune option pour un niveau d'information "normal" avec progression du téléchargement donc smile

Hors ligne

#2017 Le 22/04/2021, à 07:24

MicP

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Bonjour

Tawal a écrit :

…Une petite barre de progression …

En bash, j'avais fait une fonction nommée barreProgress :

#!/bin/bash

noirSurVert=$'\033[38;5;0m\033[48;5;10m'
razCouleurs=$'\033[m'

msgText="Progression"
carVide=" "
carPlein="#"

function barreProgress {
    depart=$1; test $depart -eq 0 && depart=1
    fin=$2;    test $fin    -eq 0 && fin=1
    pourcent=$((($depart*100/$fin*100)/100))
    longBar=$(($COLUMNS-(${#msgText}+10)))
    fait=$(((pourcent*longBar)/100))
    plein=$(printf "%${fait}s")
    vide=$(printf "%$((longBar-fait))s")
    barre="${plein// /$carPlein}${vide// /$carVide}"
    printf "\r${noirSurVert}$msgText [$(printf '%3d' $pourcent)%%]${razCouleurs} [$barre]"
}

#######################################
# Pour tester la barre de progression :

depart=1
jusqua=4242          # taille du fichier
tempo=0.0001

printf '\033[?25l'   # curseur invisible
for pos in $(seq $depart $jusqua)
do
    sleep $tempo
    barreProgress $pos $jusqua
done
msgText="Copie terminée"
barreProgress 100 100
printf '\033[?25h'   # curseur apparent

########################################

Dernière modification par MicP (Le 22/04/2021, à 19:17)

Hors ligne

#2018 Le 22/04/2021, à 11:25

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@MicP:
Intéressant la barre de progression en bash.
Mais il faut connaître à l'avance le total.
Je ne vois pas comment m'en servir avec une commande dont je connais pas l'échéance.

@thib1984:
Même sans barre de progression, juste un message pour signaler le début (c'est déjà fait) et la fin du téléchargement, et le début et la fin de l'encodage.
Après en surveillant l'activité de ma machine, je vois bien que quelque chose se passe :
Je vois le téléchargement sur mon conky-réseau et je vois l'usage CPU lors de l'encodage.

Merci encore.

Edit:
@thib1984: Encore une petite chose.
Ça concerne le nommage des fichiers mp3.
En effet, le nommage se fait avec les mots "Artiste" et "Song" de la ligne de commande.
Or, il est possible que la recherche sur youtube renvoie tout autre chose.
Il serait (si c'est possible) peut-être judicieux de nommer les fichiers en fonction des infos youtube et du choix de l'utilisateur.
Pour le tagage des mp3, c'est bon wink

Dernière modification par Tawal (Le 22/04/2021, à 12:50)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2019 Le 22/04/2021, à 13:27

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

@Tawal

Tu verrais cela comment?
- une option au lancement (par exemple -k/--keep pour "garder" les infos de youtube? C'est à dire que le titre de la video serait celui du mp3)
- une demande à l'utilisateur à chaque DL? (je t'avoue que je n'aime pas trop cette idée de multiplier les interactions, il faudrait aussi gérer le --auto/-y etc, etc, quel choix on propose etc etc)
- autre chose?

Personnellement je préfère la solution 1 smile

Hors ligne

#2020 Le 22/04/2021, à 13:44

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

En fait, j'aurais plutôt vu ça par défaut et une option pour forcer le nommage selon la ligne de commande.
Il faut garder cette option si plusieurs téléchargement portent le même nom (possible).

Je trouve plus logique que le fichier porte le nom de ce qu'il contient.
Si je fais une recherche "ArtisteX" "MotY"  mais que dans les choix, il me soit proposé "ArtisteZ" "MotY+autre chose" et que ce choix me convienne, je me retrouve avec un fichier (actuellement) dont le nom ne reflète pas du tout son contenu.
Par exemple  :

$ ~/.local/bin/ytdlmusic "Syd Barrett" "Opel"
search "Syd Barrett Opel" with youtube-search-python
1
Syd Barrett - Opel
https://www.youtube.com/watch?v=Ch3BfpZp8PI
6:28-481,998 views
2
Syd Barrett - Opel
https://www.youtube.com/watch?v=ioyZ5ESV-bU
6:27-18,515 views
3
Very Best of Syd Barrett (Pink Floyd and Solo work)
https://www.youtube.com/watch?v=NlUcq8PFU2U
1:31:03-85,666 views
4
Anthony Reynolds sings Syd Barrett: OPEL
https://www.youtube.com/watch?v=qQhIJ7X3Nww
4:48-5,799 views
5
Syd Barrett - Octopus
https://www.youtube.com/watch?v=8k5WQnfCjmk
3:48-1,167,731 views
Which (1-5, 0 to exit, 1 by default) ? 0
Abort.

Sur ce retour, si je choisis le 3 ou le 5, le nom de fichier n'est pas juste s'il est pris sur la ligne de commande.
Je ne sais pas si je suis assez clair.

Au plaisir.

Edit:
Et tant qu'à y être, il y quelques petites erreurs dans le retour de l'option -h : (rien de bien méchant wink)

ytdlmusic -h a écrit :

--batch=<path>%<bool_h>%<s>%<art_col>%<song_col>
                            : batch mode, loop on a <path> csv file with an
                            header <bool_h>, with separator <sep>, artist on
                            colum number <art_col>, song aon column number
                            <song_col>

Et encore autre chose : est-il possible d'augmenter le nb de choix ?

Merci encore de ta réactivité et de ton engagement smile

Dernière modification par Tawal (Le 22/04/2021, à 13:56)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2021 Le 22/04/2021, à 13:55

thib1984

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Yes du coup, le --keep/-k s'inverserait : avec cette option -k/--keep activée, on force l'enregistrement en author_song sinon on prend celui de la vidéo youtube.
Attendons quand meme l'avis de @jlfh0816, est ce que ce nouveau fonctionnement te plait?

EDIT : en fait je pense que pour le moment le -k sera pour dire de garder le nom youtube (par defaut on reste avec l'ancien fonctionnement). Si l'option plait et est utilisée fréquemment, j'inverserai le choix par defaut.
En clair, sur la future version, tu devras mettre -k pour avoir le fonctionnement que tu indiques

En échange je gère le multi choix variable avec une option --n=X ou X est un nombre smile

EDIT 2 : je ne veux pas imposer mes choix bien sûr. C'est juste que je préfère garder le fonctionnement natif de l'application le plus stable possible, et pour le moment le fonctionnement natif c'est

ytdlmusic "brel" "amsterdam"

propose 5 choix et enregistre un fichier brel_amsterdam.mp3 (simple et efficace)
Ton idée reste très bonne, et je vais donc ajouter une option pour l'activer, mais elle ne sera activé par défaut que si il y a une demande "globale" en ce sens smile
J'espère que je suis clair smile

Dernière modification par thib1984 (Le 22/04/2021, à 14:12)

Hors ligne

#2022 Le 22/04/2021, à 13:59

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Oui, ça correspond entièrement à ma demande wink
Attendons l'avis de jlfh0816 en effet, je ne suis pas tout seul et n'ai sûrement aucune priorité wink

PS : J'ai édité mon message #2020 pour des erreurs sur le retour -h

Dernière modification par Tawal (Le 22/04/2021, à 14:00)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2023 Le 22/04/2021, à 14:03

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Tu es un Zamour.

Tu fais comme tu l'entends, ton projet t'appartient wink
Tout ce que je vois, c'est que j'ai accès à toutes mes demandes !
Que dirais une femme devant autant de satisfaction ? lol

Dernière modification par Tawal (Le 22/04/2021, à 14:03)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#2024 Le 22/04/2021, à 14:14

MicP

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Dans son message #2018, Tawal a écrit :

… la barre de progression en bash.
Mais il faut connaître à l'avance le total.
Je ne vois pas comment m'en servir avec une commande dont je connais pas l'échéance. …

Le nombre d'octets peut être remplacé par le nombre de liens, ou/et le nombre d'opérations faites.
On peut aussi ajouter juste au dessus ou en dessous un descriptif sommaire de l'opération en cours, le temps passé, une estimation du temps ou et du nombre d'opérations qu'il reste à faire, etc.

Hors ligne

#2025 Le 22/04/2021, à 15:22

Tawal

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Oui MicP.
Mais avec ytdlmusic de thib1984, si un téléchargement + encodage prend du temps, il n'y a aucune sortie pour indiquer que quelque chose se passe.
Et comme je ne touche pas du tout à python, je ne vais pas me risquer à gratter le code source wink

Ta fonction est intéressante dans un script bash (elle est jolie et parlante) et je m'en servirai volontiers. Merci de ce partage wink
Mais je ne vois toujours pas comment m'en servir dans ce cas particulier.

Dernière modification par Tawal (Le 22/04/2021, à 15:23)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne