kamui-fin/yt-to-anki

YouTube downloader bug: Unable to extract uploader id

stanislaw opened this issue · 2 comments

It looks like yt-dlp has an issue that was already reported: yt-dlp/yt-dlp#6253.

For any video that I am trying to download, I am getting the Unable to extract uploader id error (see below). This comment suggests that the fix is on the way.

One thought about this: how about we pin all the production Python package versions for now?

Fehler
Es ist ein Fehler aufgetreten. Bitte starten Sie Anki neu und halten Sie während des Startvorgangs die Umschalttaste gedrückt, damit Anki die installierten Erweiterungen temporär deaktiviert.
Wenn das Problem nur auftritt, wenn die Erweiterungen aktiviert sind, dann benutzen Sie bitte den Menueintrag Extras > Erweiterungen um die problembehaftete Erweiterung durch selektives Deaktivieren herauszufinden.
Wenn Sie die entsprechende Erweiterung herausgefunden haben, dann bitten wir, dass Sie sich mit einem entsprechenden Problembericht an die [Support-Seite für Erweiterungen](https://forums.ankiweb.net/c/add-ons/11) wenden, damit der Fehler behoben werden kann.
Debuginformationen:
Anki 2.1.57 (6b7d372c) Python 3.11.1 Qt 5.15.2 PyQt 5.15.9
Platform: macOS-12.6.2-x86_64-i386-64bit
Flags: frz=False ao=True sv=2
Add-ons, last update check: 2023-02-16 20:02:40
Möglicherweise beteiligte Erweiterungen: ⁨964531817⁩

ERROR: [youtube] FVGS1pgaZQ4: 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
Caught exception:
Traceback (most recent call last):
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1502, in wrapper
    return func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1578, in __extract_info
    ie_result = ie.extract(url)
                ^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/extractor/common.py", line 680, in extract
    ie_result = self._real_extract(url)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/extractor/youtube.py", line 4049, in _real_extract
    'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id') if owner_profile_url else None,
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/extractor/common.py", line 1228, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
yt_dlp.utils.RegexNotFoundError: [youtube] FVGS1pgaZQ4: 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

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/stanislaw/Library/Application Support/Anki2/addons21/964531817/worker.py", line 75, in run
    result: YouTubeDownloadResult = YouTubeClient.download_video_files(
                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Application Support/Anki2/addons21/964531817/client_youtube.py", line 47, in download_video_files
    YouTubeClient._download_subtitles(
  File "/Users/stanislaw/Library/Application Support/Anki2/addons21/964531817/client_youtube.py", line 97, in _download_subtitles
    ydl.download([video_task.youtube_video_url])
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 3358, in download
    self.__download_wrapper(self.extract_info)(
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 3333, in wrapper
    res = func(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1491, in extract_info
    return self.__extract_info(url, self.get_info_extractor(key), download, extra_info, process)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1520, in wrapper
    self.report_error(str(e), e.format_traceback())
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 1012, in report_error
    self.trouble(f'{self._format_err("ERROR:", self.Styles.ERROR)} {message}', *args, **kwargs)
  File "/Users/stanislaw/Library/Caches/pypoetry/virtualenvs/yt-to-anki-f_Xvcl6E-py3.11/lib/python3.11/site-packages/yt_dlp/YoutubeDL.py", line 952, in trouble
    raise DownloadError(message, exc_info)
yt_dlp.utils.DownloadError: ERROR: [youtube] FVGS1pgaZQ4: 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

I went ahead and disabled that test for now until it can be fixed upstream.

One thought about this: how about we pin all the production Python package versions for now?

I think this is a good idea, we could certainly benefit from this.