Repository: yt-dlp
Issue: [udemy:course] course: Unable to extract login-form form
Labels: account-needed,site-bug

### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

- [X] I understand that I will be **blocked** if I *intentionally* remove or skip any mandatory\* field

### Checklist

- [X] I'm asking a question and **not** reporting a bug or requesting a feature
- [X] I've looked through the [README](https://github.com/yt-dlp/yt-dlp#readme)
- [X] I've verified that I'm running yt-dlp version **2023.07.06** ([update instructions](https://github.com/yt-dlp/yt-dlp#update)) or later (specify commit)
- [X] I've searched [known issues](https://github.com/yt-dlp/yt-dlp/issues/3766) and the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar questions **including closed ones**. DO NOT post duplicates
- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)

### Please make sure the question is worded well enough to be understood


try to download my udemy videos i've payed for for offline viewing on the train where i have time to learn


### Provide verbose output that clearly demonstrates the problem

- [X] Run **your** yt-dlp command with **-vU** flag added (`yt-dlp -vU <your command line>`)
- [X] If using API, add `'verbose': True` to `YoutubeDL` params instead
- [X] Copy the WHOLE output (starting with `[debug] Command-line config`) and insert it below

### Complete Verbose Output

```shell
[debug] Command-line config: ['-u', 'PRIVATE', '-p', 'PRIVATE', 'https://www.udemy.com/course/blender-28-the-complete-guide-from-beginner-to-pro/', '-vU']
[debug] Encodings: locale utf-8, fs utf-8, pref utf-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.07.06 [b532a3481]
[debug] Lazy loading extractors is disabled
[debug] Python 3.11.4 (CPython x86_64 64bit) - Linux-6.1.0-10-amd64-x86_64-with-glibc2.37 (OpenSSL 3.0.10 1 Aug 2023, glibc 2.37)
[debug] exe versions: ffmpeg 6.0-5 (setts), ffprobe 6.0-5, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.11.0, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, pyxattr-0.8.1, secretstorage-3.3.3, sqlite3-2.6.0, websockets-10.4
[debug] Proxy map: {}
[debug] Loaded 1855 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version: stable@2023.07.06, Current version: stable@2023.07.06
yt-dlp is up to date (stable@2023.07.06)
[udemy:course] Downloading login popup
ERROR: [udemy:course] course: Unable to extract login-form form; 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
  File "/home/stuv/Downloads/yt-dlp-2023.07.06/yt_dlp/extractor/common.py", line 707, in extract
    self.initialize()
  File "/home/stuv/Downloads/yt-dlp-2023.07.06/yt_dlp/extractor/common.py", line 613, in initialize
    self._perform_login(username, password)
  File "/home/stuv/Downloads/yt-dlp-2023.07.06/yt_dlp/extractor/udemy.py", line 179, in _perform_login
    login_form = self._form_hidden_inputs('login-form', login_popup)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/stuv/Downloads/yt-dlp-2023.07.06/yt_dlp/extractor/common.py", line 1716, in _form_hidden_inputs
    form = self._search_regex(
           ^^^^^^^^^^^^^^^^^^^
  File "/home/stuv/Downloads/yt-dlp-2023.07.06/yt_dlp/extractor/common.py", line 1258, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
```