记一次Metube失效的docker分析

Error adding URL: ERROR: [youtube] 7bOptq-NPJQ: Unable to extract uploader id; please report this issue on https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using yt-dlp -U

上个月老婆反映家里下载Youtube的服务器网页工作不正常,具体提示的就是uploader的地址不能成功的解析,问题出现在上个月Youtube的一次更新。放狗搜一下解决办法,看到有人提到所有GUI的什么(例如我用的Metube和另一个流行版本的mikenye)都是基于yt-dlp的引擎,只要引擎的问题解决了就解决了所有的问题。

问题简单了,只需要更新yt-dlp,而在github上的官方指导是用yt-dlp -U,但是我使用之后报错,提示我的使用pip安装的。。。

下面就是利用pip更新的指令:pip install –upgrade yt-dlp

这里忘记了,我们需要在docker里面运行pip install –upgrade yt-dlp, 这里就要知道如何在docker里面运行指令行:

  • 找出docker的号码
  • 启动执行docker 代码
~$ sudo docker ps
[sudo] password for zqq: 
CONTAINER ID   IMAGE                                    COMMAND                  CREATED        STATUS          PORTS                                       NAMES
1cdd81d6b5c9   alexta69/metube                          "./docker-entrypoint…"   9 days ago     Up 7 days       0.0.0.0:8081->8081/tcp, :::8081->8081/tcp   metube
2a90f183d701   lscr.io/linuxserver/calibre-web:latest   "/init"                  3 months ago   Up 7 days       0.0.0.0:8083->8083/tcp, :::8083->8083/tcp   calibre-web
b8d43d06cfae   doocs/md:latest                          "md"                     3 months ago   Up 19 minutes   0.0.0.0:8080->80/tcp, :::8080->80/tcp       amazing_gagarin
zqq@MacUbnt:~$ sudo docker exec -it 1cdd81d6b5c9 pip install --upgrade yt-dlp
Requirement already satisfied: yt-dlp in /usr/local/lib/python3.8/site-packages (2022.11.11)
Collecting yt-dlp
  Downloading yt_dlp-2023.3.4-py2.py3-none-any.whl (2.9 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.9/2.9 MB 3.2 MB/s eta 0:00:00
Requirement already satisfied: brotli in /usr/local/lib/python3.8/site-packages (from yt-dlp) (1.0.9)
Requirement already satisfied: websockets in /usr/local/lib/python3.8/site-packages (from yt-dlp) (10.4)
Requirement already satisfied: mutagen in /usr/local/lib/python3.8/site-packages (from yt-dlp) (1.46.0)
Requirement already satisfied: pycryptodomex in /usr/local/lib/python3.8/site-packages (from yt-dlp) (3.15.0)
Requirement already satisfied: certifi in /usr/local/lib/python3.8/site-packages (from yt-dlp) (2022.9.24)
Installing collected packages: yt-dlp
  Attempting uninstall: yt-dlp
    Found existing installation: yt-dlp 2022.11.11
    Uninstalling yt-dlp-2022.11.11:
      Successfully uninstalled yt-dlp-2022.11.11
Successfully installed yt-dlp-2023.3.4
千言万语汇成一句指令: 
sudo docker exec -it <Docker ID> pip install --upgrade yt-dlp