Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux
Répondre à la discussion
Affichage des résultats 1 à 21 sur 21

Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux



  1. #1
    theuds

    Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux


    ------

    Bonjour,
    mon vieux PC portable principal (ThinPad) est sous Linux Mint 19.3 Tricia.

    Je ne sais plus comment jl'ai installé yt-dlp, via PIP peut être, mais c'est tellement vieux déjà...


    Si je tente un téléchargement, ça bloque :
    Code:
    Support for Python version 3.6 has been deprecated. See  https://github.com/yt-dlp/yt-dlp/issues/3764  for more details.
    You will no longer receive updates on this version! Please update to Python 3.7 or above
    J'ai pourtant Python 3.7 d'installé !


    J'ai essayé plusieurs commandes, mais je suis complètement perdu :

    yt-dlp -U
    Code:
        Latest version: 2023.03.04, Current version: 2022.07.18
        ERROR: It looks like you installed yt-dlp with a package manager, pip or setup.py; Use that to update
    python3 -m pip install --no-deps yt-dlp
    Code:
        Successfully installed yt-dlp-2022.7.18
    Donc la version actuellement qui est périmée, obsolète.

    python3 -m pip install -U yt-dlp
    Code:
        Successfully installed brotli-1.0.9 certifi-2022.12.7 mutagen-1.45.1 pycryptodomex-3.17 websockets-9.1 yt-dlp-2022.7.18
    sudo add-apt-repository ppa:yt-dlp/stable
    Code:
        Impossible d'ajouter le PPA*: ''Aucun PPA supporté ne fut trouvé sous ce nom.

    Si quelqu'un pouvait me dire quelle commande saisir,
    d'avance un énorme merci !

    -----

  2. #2
    CM63

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Bonjour,

    Quand tu as tapé :

    python3 -m pip install -U yt-dlp

    Il semble que ça a marché, alors pourquoi essaies-tu ensuite de l'installer par sudo apt install ?

    Moi je ne sais plus comment je l'ai installé, je ne suis pas sur le bon PC.
    Quoi? Quelque chose que je ne connais pas et qui me fait l'affront d'exister?!

  3. #3
    theuds

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par CM63 Voir le message
    Quand tu as tapé :

    python3 -m pip install -U yt-dlp

    Il semble que ça a marché, alors pourquoi essaies-tu ensuite de l'installer par sudo apt install ?
    Ca "fonctionne",
    mais ça reste sur la version obsolète (2022.7.18) alors que la nouvelle date de 2023.
    (j'ai tenté également de désinstaller pour réinstaller, mais pas mieux)

  4. #4
    umfred

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    python3 doit correspondre au python3.6. Si tu lances justes python3, ça t'ouvres quelle version de python ?
    sous windows avec py --list on peut voir les versions de python disponibles, je pense que c'est la même option sous linux => python3 --list

  5. A voir en vidéo sur Futura
  6. #5
    theuds

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par umfred Voir le message
    python3 doit correspondre au python3.6. Si tu lances justes python3, ça t'ouvres quelle version de python ?
    Python 3.6.9

    Citation Envoyé par umfred Voir le message
    je pense que c'est la même option sous linux => python3 --list
    Pas trouvé la commande,

    j'ai tenté (aucune idée si utile ou non) :
    apt list python --installed
    Code:
     python/bionic,now 2.7.15~rc1-1 i386  installé

    Autre commande :
    ls -l /usr/bin/python*
    Code:
    lrwxrwxrwx 1 root root       9 nov.  25  2020 /usr/bin/python -> python2.7
    lrwxrwxrwx 1 root root       9 nov.  25  2020 /usr/bin/python2 -> python2.7
    -rwxr-xr-x 1 root root 3745852 mars   8 19:40 /usr/bin/python2.7
    lrwxrwxrwx 1 root root      31 mars   8 19:40 /usr/bin/python2.7-config -> i386-linux-gnu-python2.7-config
    lrwxrwxrwx 1 root root       9 nov.  25  2020 /usr/bin/python3 -> python3.6
    -rwxr-xr-x 2 root root 4671968 mars  10 17:46 /usr/bin/python3.6
    lrwxrwxrwx 1 root root      31 mars  10 17:46 /usr/bin/python3.6-config -> i386-linux-gnu-python3.6-config
    -rwxr-xr-x 2 root root 4671968 mars  10 17:46 /usr/bin/python3.6m
    lrwxrwxrwx 1 root root      32 mars  10 17:46 /usr/bin/python3.6m-config -> i386-linux-gnu-python3.6m-config
    -rwxr-xr-x 2 root root 5028280 déc.   9  2021 /usr/bin/python3.7
    lrwxrwxrwx 1 root root      31 déc.   9  2021 /usr/bin/python3.7-config -> i386-linux-gnu-python3.7-config
    -rwxr-xr-x 2 root root 5028280 déc.   9  2021 /usr/bin/python3.7m
    lrwxrwxrwx 1 root root      32 déc.   9  2021 /usr/bin/python3.7m-config -> i386-linux-gnu-python3.7m-config
    -rwxr-xr-x 1 root root 5392948 déc.   9  2021 /usr/bin/python3.8
    lrwxrwxrwx 1 root root      16 oct.  25  2018 /usr/bin/python3-config -> python3.6-config
    lrwxrwxrwx 1 root root      10 nov.  25  2020 /usr/bin/python3m -> python3.6m
    lrwxrwxrwx 1 root root      17 oct.  25  2018 /usr/bin/python3m-config -> python3.6m-config
    -rwxr-xr-x 1 root root    5902 juil. 27  2017 /usr/bin/python3-wsdump

  7. #6
    CM63

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Dans le répertoire /usr/bin il faudrait que le lien python pointe sur python3 et non pas sur python2.7 . Etant dans ce répertoire, il faudrait faire :
    rm python
    puis créer le lien : c'est la commande ln -s , mais je ne me souviens plus dans quel ordre on indique les arguments, là je ne suis pas sur mon PC sous Linux, tape "ln -s" dans Google, tu verras des exemples. Mais commence par être sûr de la syntaxe de ln -s avant de faire le rm python (tout ça doit être fait sous root , bien sur ou précédé de sudo)
    Quoi? Quelque chose que je ne connais pas et qui me fait l'affront d'exister?!

  8. #7
    Ernum

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    salut,

    pour savoir quelles versions de python tu as installé, tu peux essayer:
    Code:
    apt policy python
    et
    Code:
    apt policy python3
    .

    le man d'ln donne:

    Code:
    SYNOPSIS
           ln [OPTION]... [-T] TARGET LINK_NAME
           ln [OPTION]... TARGET
           ln [OPTION]... TARGET... DIRECTORY
           ln [OPTION]... -t DIRECTORY TARGET...
    sinon une solution serait de créer un alias dans bash, du genre:
    Code:
    alias python= '/usr/bin/python3'
    ou alors utiliser
    Code:
    update-alternatives
    voir ici.
    Dernière modification par Ernum ; 27/03/2023 à 18h13.

  9. #8
    umfred

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    en tout cas, si python3 t'ouvres un python 3.6.9, ça explique le pourquoi tu as le message du début.
    La commande c'est peut-être simplement python --list
    Sinon essayer python3.7 --version

    Sinon regarde la solution postée sur ce forum Mint à une personne qui a le même souci que toi https://forum-francophone-linuxmint....19554&start=10
    L'idée est mettre par défaut la version 3.7

  10. #9
    CM63

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Merci Ernum, pour la syntaxe de ln, alors dans ce cas, il faut aller sous /usr/bin et taper :

    sudo rm python
    sudo ln -s python3 python

    Comme il y a un lien de python3 vers python3.6 , tu auras cette version. Si tu veux python3.7, qui est aussi installé chez toi, tu devras supprimer le lien python3 et le recréer en pointant vers python3.7 .

    Tu as aussi python3.8 d'installé éventuellement.
    Quoi? Quelque chose que je ne connais pas et qui me fait l'affront d'exister?!

  11. #10
    theuds

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Merci pour vos réponses !

    Citation Envoyé par CM63 Voir le message
    Merci Ernum, pour la syntaxe de ln, alors dans ce cas, il faut aller sous /usr/bin et taper :

    sudo rm python
    sudo ln -s python3 python
    Fait, mais ça n'a pas débloqué (j'ai l'impression que c'est l'installation par pip qui a mis en dur la version de python associée, mais je n'en sais rien)


    J'ai tenté (depuis le forum cité) :
    sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7
    Résultat
    Code:
    update-alternatives: --install a besoin de <lien> <nom> <chemin> <priorité>
    ???

    Donc assez logiquement (vu message d'erreur) :
    update-alternatives --list python
    Donne :
    Code:
    update-alternatives: erreur: pas d'alternatives pour python

    apt policy python
    Donne :
    Code:
    python:
      Installé*: 2.7.15~rc1-1
      Candidat*: 2.7.15~rc1-1
     Table de version*:
     *** 2.7.15~rc1-1 500
            500 http://archive.ubuntu.com/ubuntu bionic/main i386 Packages
            100 /var/lib/dpkg/status
    apt policy python3
    Donne :
    Code:
    python3:
      Installé*: 3.6.7-1~18.04
      Candidat*: 3.6.7-1~18.04
     Table de version*:
     *** 3.6.7-1~18.04 500
            500 http://archive.ubuntu.com/ubuntu bionic-updates/main i386 Packages
            100 /var/lib/dpkg/status
         3.6.5-3 500
            500 http://archive.ubuntu.com/ubuntu bionic/main i386 Packages

    Je ne sais pas si vous y voyez une piste, mais moi je nage,
    encore merci pour votre aide !

  12. #11
    pm42

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Pour définir une version de Python par défaut sur Ubuntu, vous pouvez utiliser la commande update-alternatives. Voici les étapes à suivre:

    Ouvrez un terminal en appuyant sur Ctrl + Alt + T.
    Tout d'abord, vérifiez les différentes versions de Python installées sur votre système en exécutant:

    Code:
    ls /usr/bin/python*
    Vous verrez une liste de versions Python, telles que python2.7, python3.8, etc.

    Utilisez update-alternatives pour gérer les différentes versions de Python. Pour chaque version Python que vous souhaitez gérer, exécutez la commande suivante:
    Code:
    sudo update-alternatives --install /usr/bin/python python /usr/bin/pythonX.Y 10
    Remplacez X.Y par la version de Python que vous souhaitez ajouter (par exemple, 3.8 pour Python 3.8). La valeur 10 est une priorité, qui peut être modifiée pour influencer la version par défaut si plusieurs versions ont la même priorité.

    Par exemple, pour gérer Python 3.8 et Python 3.9, exécutez:

    Code:
    sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 10
    sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.9 20
    Maintenant, vous pouvez choisir la version par défaut en utilisant la commande suivante:

    Code:
    sudo update-alternatives --config python
    Cela affichera une liste de versions gérées par update-alternatives. Entrez le numéro correspondant à la version que vous souhaitez définir comme version par défaut, puis appuyez sur Entrée.

    Pour vérifier que la version par défaut de Python a bien été modifiée, exécutez:
    Code:
    python --version
    Cela devrait afficher la version de Python que vous avez définie comme version par défaut.

    Notez que la modification de la version par défaut de Python peut entraîner des problèmes de compatibilité avec certains logiciels et scripts qui dépendent d'une version spécifique de Python. Assurez-vous de tester soigneusement votre système après avoir effectué ces modifications.

  13. #12
    pm42

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Bon, ça c'est la version GPT-4 qui reprend ce qui a été dit en 100% méthodique et peut-être même exact.

    Gérer les versions comme ça, c'est l'enfer. J'utiliserais plutôt virtualenv qui est en standard et que je ne connais pas bien ou Anaconda dont je me sers quotidiennement.
    Après l'avoir installé (voir https://docs.continuum.io/anaconda/), on fait

    Code:
    conda create --name ytdlp python=3.7.0
    Ou plus récent coté version. Puis quand on veut s'en servir :

    Code:
    conda activate ytdlp
    L'autre avantage, c'est qu'on a aussi des packages installés par environnement et pas globalement ce qui évite conflits, problèmes de versions incompatibles, etc.

    On peut faire la même chose avec Virtualenv qui est livré en standard avec Python lui et c'est expliqué sur le Net.

  14. #13
    theuds

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par pm42 Voir le message
    Code:
    ls /usr/bin/python*
    Résultat :
    Code:
    /usr/bin/python            /usr/bin/python3.6          /usr/bin/python3.7-config   /usr/bin/python3m
    /usr/bin/python2           /usr/bin/python3.6-config   /usr/bin/python3.7m         /usr/bin/python3m-config
    /usr/bin/python2.7         /usr/bin/python3.6m         /usr/bin/python3.7m-config  /usr/bin/python3-wsdump
    /usr/bin/python2.7-config  /usr/bin/python3.6m-config  /usr/bin/python3.8
    /usr/bin/python3           /usr/bin/python3.7          /usr/bin/python3-config

    Citation Envoyé par pm42 Voir le message
    Code:
    sudo update-alternatives --install /usr/bin/python python /usr/bin/pythonX.Y 10
    Merci pour le niveau de priorité, c'est bien ce qu'il me manquait !

    Citation Envoyé par pm42 Voir le message
    Code:
    sudo update-alternatives --config python
    Cela affichera une liste de versions gérées par update-alternatives. Entrez le numéro correspondant à la version que vous souhaitez définir comme version par défaut, puis appuyez sur Entrée.


    Code:
    python --version
    Cela devrait afficher la version de Python que vous avez définie comme version par défaut.
    Code:
    Python 3.7.5
    MERCI !




    Par contre, télécharger ou juste yt-dlp -U
    me donne :
    Code:
    Traceback (most recent call last):
      File "/home/gilles/.local/bin/yt-dlp", line 7, in <module>
        from yt_dlp import main
    ModuleNotFoundError: No module named 'yt_dlp'
    Voici le contenu du script :
    Code:
    #!/usr/bin/python3
    
    # -*- coding: utf-8 -*-
    import re
    import sys
    
    from yt_dlp import main
    
    if __name__ == '__main__':
        sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
        sys.exit(main())
    Là je suis encore complètement perdu...

  15. #14
    pm42

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Cela veut dire que yt_dlp n'est pas installé ou plus exactement que Python ne trouve pas ses fichiers.

  16. #15
    theuds

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par pm42 Voir le message
    Cela veut dire que yt_dlp n'est pas installé ou plus exactement que Python ne trouve pas ses fichiers.
    Ah !



    python3 -m pip install --no-deps yt-dlp
    Résultat :
    Code:
    Installing collected packages: yt-dlp
    Successfully installed yt-dlp-2023.3.4
    Hé hé hé...


    yt-dlp -U
    "is up to date"

    Téléchargement !
    Ca fonctionne !!!!!!!!!!

    Un énorme MERCI !

  17. #16
    Ernum

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Et oui, il faut faire attention à la syntaxe,
    c'est yt-dlp et non yt_dlp, je fais référence à ceci dans ton message:

    Code:
    ...
        from yt_dlp import main ModuleNotFoundError: No module named 'yt_dlp'

  18. #17
    theuds

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par Ernum Voir le message
    Et oui, il faut faire attention à la syntaxe,
    c'est yt-dlp et non yt_dlp, je fais référence à ceci dans ton message:

    Code:
    ...
        from yt_dlp import main ModuleNotFoundError: No module named 'yt_dlp'
    Le script n'a pas changé (depuis la mise à jour), je présume que c'est un alias,
    en tout cas, la mise à jour a réglé/contourné le problème.



    Encore MERCI pour l'aide précieuse !

  19. #18
    polo974

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par Ernum Voir le message
    Et oui, il faut faire attention à la syntaxe,
    c'est yt-dlp et non yt_dlp, je fais référence à ceci dans ton message:

    Code:
    ...
        from yt_dlp import main ModuleNotFoundError: No module named 'yt_dlp'
    Sauf que yt-dlp, c'est yt <moins> dlp... donc underscore s'impose...
    Jusqu'ici tout va bien...

  20. #19
    Ernum

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Citation Envoyé par polo974 Voir le message
    Sauf que yt-dlp, c'est yt <moins> dlp... donc underscore s'impose...
    Ben si, c'est bien yt-dlp son petit nom (celui de la commande), il ne s'agit pas non plus d'une série d'options, il aurait fallu une espace entre la commande et le moins.

    Code:
    whereis yt-dlp
    réponse:

    Code:
         
    yt-dlp: /usr/local/bin/yt-dlp
    ou alors, je n'ai pas compris ce que tu voulais dire.
    Dernière modification par Ernum ; 29/03/2023 à 16h52.

  21. #20
    umfred

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    yt_dlp c'est le nom du module utilisé par python pour l'application yt-dlp (et en python, on ne peut pas importer via import un module comportant un '-'), aucune mauvaise manip de nulle part, c'est le script de yt-dlp tout simplement.

  22. #21
    Ernum

    Re : Impossible de mettre à jour yt-dlp (version python trop ancienne) sous Linux

    Ha bah oui effectivement, merci umfred,

    et toutes mes excuses à polo974 et theuds.

Discussions similaires

  1. Impossible de mettre à jour la partition réservée du système
    Par bouzakhti dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 07/03/2020, 22h49
  2. Impossible de mettre à jour adobe player.
    Par davidk dans le forum Sécurité et malwares : désinfectez votre machine
    Réponses: 1
    Dernier message: 20/09/2012, 19h24
  3. Réponses: 44
    Dernier message: 23/01/2009, 10h03
  4. Impossible de mettre à jour windows XP !!!
    Par salsitawapa dans le forum Internet - Réseau - Sécurité générale
    Réponses: 22
    Dernier message: 01/10/2006, 09h41
  5. Kylix (version delphi) sous linux pb de variable
    Par invite5516adb1 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 22/04/2004, 13h22
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...