Comments (14)
Okay I am providing actual ytdl and ytdl-nightly logs for this, since it is the same player id.
As always, freshly compiled and ran from each repo.
==========================
TESTING NORMAL YOUTUBE-DL:
==========================
[debug] System config: []
[debug] User config: ['--no-mtime', '--match-filter', '!is_live', '--retries', 'infinite', '--fragment-retries', '3', '--skip-unavailable-fragments', '--restrict-filenames', '-i', '-o', '/home/gregorius/home/pending/videos/%(title)s___%(id)s.webm', '-f', '(bestvideo[height<=360]+worstaudio/best[height<=360])[protocol!=http_dash_segments][container!^=dash]', '--console-title', '--hls-prefer-native', '--no-cache-dir', '--http-chunk-size', '100M', '--cookies', '/home/gregorius/home/scripts/video/youtube-dl-cookies']
[debug] Custom config: []
[debug] Command-line args: ['https://www.youtube.com/watch?v=zPHM0q0xgFg', '-vf', '18', '--no-playlist', '-o', '/home/gregorius/home/scripts/video/TEST_NORMAL_%(title)s___%(id)s.webm']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Single file build
[debug] Python 3.10.12 (CPython x86_64 64bit) - Linux-5.15.0-112-generic-x86_64-with-glibc2.35 - OpenSSL 3.0.2 15 Mar 2022 - glibc 2.35
[debug] exe versions: ffmpeg 4.4.2, ffprobe 4.4.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] zPHM0q0xgFg: Downloading webpage
[youtube] Downloading just video zPHM0q0xgFg because of --no-playlist
[youtube] zPHM0q0xgFg: Downloading player 20dfca59
ERROR: Unable to extract nsig function code (caused by RegexNotFoundError('Unable to extract \x1b[0;34mInitial JS player n function name\x1b[0m; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.')); please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
Traceback (most recent call last):
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1637, in _decrypt_nsig
jsi, player_id, func_code = self._extract_n_function_code(video_id, player_url)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1690, in _extract_n_function_code
func_name = self._extract_n_function_name(jscode)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1660, in _extract_n_function_name
func_name, idx = self._search_regex(
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/common.py", line 1101, in _search_regex
raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract Initial JS player n function name; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
Traceback (most recent call last):
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1637, in _decrypt_nsig
jsi, player_id, func_code = self._extract_n_function_code(video_id, player_url)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1690, in _extract_n_function_code
func_name = self._extract_n_function_name(jscode)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1660, in _extract_n_function_name
func_name, idx = self._search_regex(
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/common.py", line 1101, in _search_regex
raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract Initial JS player n function name; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 875, in wrapper
return func(self, *args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 971, in __extract_info
ie_result = ie.extract(url)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/common.py", line 571, in extract
ie_result = self._real_extract(url)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 2108, in _real_extract
self._unthrottle_format_urls(video_id, player_url, dct)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1725, in _unthrottle_format_urls
n_response = decrypt_nsig(n_param)(n_param, video_id, player_url)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1614, in inner
raise ret
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1606, in inner
self._player_cache[cache_id] = func(*args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/extractor/youtube.py", line 1639, in _decrypt_nsig
raise ExtractorError('Unable to extract nsig function code', cause=e)
youtube_dl.utils.ExtractorError: Unable to extract nsig function code (caused by RegexNotFoundError('Unable to extract \x1b[0;34mInitial JS player n function name\x1b[0m; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.')); please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
===========================
TESTING NIGHTLY YOUTUBE-DL:
===========================
[debug] System config: []
[debug] User config: ['--no-mtime', '--match-filter', '!is_live', '--retries', 'infinite', '--fragment-retries', '3', '--skip-unavailable-fragments', '--restrict-filenames', '-i', '-o', '/home/gregorius/home/pending/videos/%(title)s___%(id)s.webm', '-f', '(bestvideo[height<=360]+worstaudio/best[height<=360])[protocol!=http_dash_segments][container!^=dash]', '--console-title', '--hls-prefer-native', '--no-cache-dir', '--http-chunk-size', '100M', '--cookies', '/home/gregorius/home/scripts/video/youtube-dl-cookies']
[debug] Custom config: []
[debug] Command-line args: ['https://www.youtube.com/watch?v=zPHM0q0xgFg', '-vf', '18', '--no-playlist', '-o', '/home/gregorius/home/scripts/video/TEST_NIGHTLY_%(title)s___%(id)s.webm']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2024.07.25 [e1b3fa242] (single file build)
[debug] ** This version was built from the latest master code at https://github.com/ytdl-org/youtube-dl.
[debug] ** For support, visit the main site.
[debug] Python 3.10.12 (CPython x86_64 64bit) - Linux-5.15.0-112-generic-x86_64-with-glibc2.35 - OpenSSL 3.0.2 15 Mar 2022 - glibc 2.35
[debug] exe versions: ffmpeg 4.4.2, ffprobe 4.4.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] zPHM0q0xgFg: Downloading webpage
[youtube] Downloading just video zPHM0q0xgFg because of --no-playlist
[youtube] zPHM0q0xgFg: Downloading player 20dfca59
ERROR: Unable to extract nsig function code (caused by RegexNotFoundError('Unable to extract \x1b[0;34mInitial JS player n function name\x1b[0m; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.')); please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
Traceback (most recent call last):
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1637, in _decrypt_nsig
jsi, player_id, func_code = self._extract_n_function_code(video_id, player_url)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1690, in _extract_n_function_code
func_name = self._extract_n_function_name(jscode)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1660, in _extract_n_function_name
func_name, idx = self._search_regex(
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/common.py", line 1101, in _search_regex
raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract Initial JS player n function name; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
Traceback (most recent call last):
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1637, in _decrypt_nsig
jsi, player_id, func_code = self._extract_n_function_code(video_id, player_url)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1690, in _extract_n_function_code
func_name = self._extract_n_function_name(jscode)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1660, in _extract_n_function_name
func_name, idx = self._search_regex(
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/common.py", line 1101, in _search_regex
raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract Initial JS player n function name; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/YoutubeDL.py", line 879, in wrapper
return func(self, *args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/YoutubeDL.py", line 975, in __extract_info
ie_result = ie.extract(url)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/common.py", line 571, in extract
ie_result = self._real_extract(url)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 2108, in _real_extract
self._unthrottle_format_urls(video_id, player_url, dct)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1725, in _unthrottle_format_urls
n_response = decrypt_nsig(n_param)(n_param, video_id, player_url)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1614, in inner
raise ret
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1606, in inner
self._player_cache[cache_id] = func(*args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-nightly/youtube-dl/youtube_dl/extractor/youtube.py", line 1639, in _decrypt_nsig
raise ExtractorError('Unable to extract nsig function code', cause=e)
youtube_dl.utils.ExtractorError: Unable to extract nsig function code (caused by RegexNotFoundError('Unable to extract \x1b[0;34mInitial JS player n function name\x1b[0m; please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.')); please report this issue on https://github.com/ytdl-org/youtube-dl/issues , using the appropriate issue template. Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose option and include the complete output.
from youtube-dl.
See yt-dlp discussion here and in linked issues. Maybe staying under the radar is the answer, though a known data centre IP might be targeted regardless.
from youtube-dl.
this isn't YT-DLP.
from youtube-dl.
Indeed: #30839: ... if you were actually running yt-dlp ...
In the UK, I'm getting 250a2ff7
which the latest yt-dl and yt-dlp handle correctly. But yt-dl will also fail with the problem player, because the way to get the n
parameter from the URL is now
... a.D&&(PL(a),b=a.j.n||null)&&(b=oDa[0](b),a.set("n",b),oDa.length||rma(""))
A tweak to the extraction pattern handles this:
--- old/youtube-dl/youtube_dl/extractor/youtube.py
+++ new/youtube-dl/youtube_dl/extractor/youtube.py
def _extract_n_function_name(self, jscode):
func_name, idx = self._search_regex(
# new: (b=String.fromCharCode(110),c=a.get(b))&&c=nfunc[idx](c)
- # or: (b="nn"[+a.D],c=a.get(b))&&(c=nfunc[idx](c)s
+ # or: (b="nn"[+a.D],c=a.get(b))&&(c=nfunc[idx](c)
+ # or: (PL(a),b=a.j.n||null)&&(b=nfunc[idx](b)
# old: .get("n"))&&(b=nfunc[idx](b)
# older: .get("n"))&&(b=nfunc(b)
r'''(?x)
- (?:\(\s*(?P<b>[a-z])\s*=\s*(?:
+ (?:\((?:[\w$()\s]+,)*?\s*(?P<b>[a-z])\s*=\s*(?:
String\s*\.\s*fromCharCode\s*\(\s*110\s*\)|
- "n+"\[\s*\+?s*[\w$.]+\s*]
- )\s*,(?P<c>[a-z])\s*=\s*[a-z]\s*)?
- \.\s*get\s*\(\s*(?(b)(?P=b)|"n{1,2}")(?:\s*\)){2}\s*&&\s*\(\s*(?(c)(?P=c)|b)\s*=\s*
+ "n+"\[\s*\+?s*[\w$.]+\s*]|
+ (?P<b1>(?:[\w$]+\s*\.\s*)+n\b(?:(?!&&).)+\))
+ )\s*
+ (?(b1)
+ &&\s*\(\s*(?P=b)|
+ (?:
+ ,(?P<c>[a-z])\s*=\s*[a-z]\s*)?
+ \.\s*get\s*\(\s*(?(b)(?P=b)|"n{1,2}")(?:\s*\)){2}\s*
+ &&\s*\(\s*(?(c)(?P=c)|(?P=b))
+ )
+ )\s*=\s*
(?P<nfunc>[a-zA-Z_$][\w$]*)(?:\s*\[(?P<idx>\d+)\])?\s*\(\s*[\w$]+\s*\)
''', jscode, 'Initial JS player n function name', group=('nfunc', 'idx'))
if not idx:
from youtube-dl.
Also: yt-dlp/yt-dlp#10608
from youtube-dl.
Also: yt-dlp/yt-dlp#10608
Thank you, so sorry about that. The referenced branch fixes what you've mentioned. I really appreciate the help!
from youtube-dl.
@dirkf is there a branch/release with the nsig fix for youtube-dl
, or just for yt-dlp
? Should we take your patch above and put it in a PR?
from youtube-dl.
Actually, a PR would be very helpful as I'm busy on something else. I have some further tweaks but I can add those to the patch above.
We need the matching test too:
--- old/youtube-dl/test/test_youtube_signature.py
+++ new/youtube-dl/test/test_youtube_signature.py
@@ -173,6 +173,10 @@
(
'https://www.youtube.com/s/player/5604538d/player_ias.vflset/en_US/base.js',
'7X-he4jjvMx7BCX', 'sViSydX8IHtdWA',
+ ),
+ (
+ 'https://www.youtube.com/s/player/20dfca59/player_ias.vflset/en_US/base.js',
+ '-fLCxedkAk4LUTK2', 'O8kfRq1y1eyHGw',
),
]
from youtube-dl.
@dirkf for the nsig fix patch, i'm getting **** Only garbage was found in the patch input.
How should I apply it, cause I guess whatever i'm doing isn't working (tried a few different ways of invoking patch
).
from youtube-dl.
I'd just edit the function on the first line (ie, removing the -
lines and adding the +
lines). The test patch should apply properly with a suitable -p ...
value.
You can make one commit or more, as you like. I'll probably merge the PR into a single commit.
from youtube-dl.
For some reason it just wouldn't apply with any value of -p
... Just did it by hand, and checked that it works to download the playlist OP saw broken:
https://www.youtube.com/playlist?list=OLAK5uy_kOExsg4A5Wc7X3_DhtK4GB0YqdeFIIjhs
It works, but then when I ran the test_youtube_signature.py
, I saw
Ran 37 tests in 26.273s
FAILED (errors=23)
With lots of Unable to extract Initial JS player n function name
. Are these failures expected?
from youtube-dl.
New Error that i get kindof consistently now after this fix, not 100% sure what went wrong there. Will open a new Issue if necessary.
Edit: I should mention Format 18 (the super basic one) works, everything else does not because Error 403 showing up 95% of the time.
==========================
TESTING NORMAL YOUTUBE-DL:
==========================
[debug] System config: []
[debug] User config: ['--no-mtime', '--match-filter', '!is_live', '--retries', 'infinite', '--fragment-retries', '3', '--skip-unavailable-fragments', '--restrict-filenames', '-i', '-o', '/home/gregorius/home/pending/videos/%(title)s___%(id)s.webm', '-f', '(bestvideo[height<=360]+worstaudio/best[height<=360])[protocol!=http_dash_segments][container!^=dash]', '--console-title', '--hls-prefer-native', '--no-cache-dir', '--http-chunk-size', '100M', '--cookies', '/home/gregorius/home/scripts/video/youtube-dl-cookies']
[debug] Custom config: []
[debug] Command-line args: ['https://www.youtube.com/watch?v=RfD1fOoRl3s', '-vf', '(242+249/242+250/242+171/242+251)/(243+249/243+250/243+171/243+251)/18', '--no-playlist', '-o', '/home/gregorius/home/scripts/video/TEST_NORMAL_%(title)s___%(id)s.webm']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Single file build
[debug] Python 3.10.12 (CPython x86_64 64bit) - Linux-5.15.0-112-generic-x86_64-with-glibc2.35 - OpenSSL 3.0.2 15 Mar 2022 - glibc 2.35
[debug] exe versions: ffmpeg 4.4.2, ffprobe 4.4.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] RfD1fOoRl3s: Downloading webpage
[youtube] Downloading just video RfD1fOoRl3s because of --no-playlist
[youtube] RfD1fOoRl3s: Downloading player d2e656ee
[debug] [youtube] Decrypted nsig 2ML9SYny8izArpmO => GVDMNIwc2DAVvw
[debug] [youtube] Decrypted nsig h4XxQcSQWAgd7VSV => xJzN3kJeyXrp5g
[debug] Invoking downloader on 'https://rr1---sn-4g5lznle.googlevideo.com/videoplayback?expire=1722561354&ei=6t6rZsSsNcCgi9oPuPmh-Ak&ip=47.69.169.114&id=o-AOrpWcupmpafDRT5jJ0aaqwXhaN7g3hVRoFLEi9kVq7e&itag=242&aitags=133%2C134%2C135%2C136%2C160%2C242%2C243%2C244%2C247%2C278%2C298%2C299%2C302%2C303%2C308%2C315&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=6T&mm=31%2C26&mn=sn-4g5lznle%2Csn-f5f7kn7z&ms=au%2Conr&mv=m&mvi=1&pl=19&initcwndbps=1712500&bui=AXc671JFI7apstfWNpNKxfyUI0nkQlksUnUgILpmuSAOhoUyOpQmIWR4RCqULf2XuM0ozMlPPpHqm8mm&spc=NO7bAcs8fS6B4X9himXdxQ-F8sOGi4LbKfr8AC327rlaUbRR7VN3_JTnl3SA&vprv=1&svpuc=1&mime=video%2Fwebm&ns=PZSanBQxVeaKXJ0XUpXp5ngQ&rqh=1&gir=yes&clen=38439826&dur=2650.748&lmt=1721863622832436&mt=1722539374&fvip=2&keepalive=yes&c=WEB&sefc=1&txp=4437434&n=xJzN3kJeyXrp5g&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRAIgdx4cDe-zP8k_7IjdNrtadYtndWX7grzveajCboHnyigCIHn-z-OAkc08GHlxov8MxxsdxWQBOMdlUQfjSPEd9khS&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AGtxev0wRAIgE9Ku0qDkD7j1s7Y7MBg1wl-cYPhz-u9ULg__zMDz7UECICZji3gl3QrmpVVq4i-2Ms0TkGWIJ8AJNg9lYlZh7kuO'
[dashsegments] Total fragments: 4
[download] Destination: /home/gregorius/home/scripts/video/TEST_NORMAL_Life_As_A_Planetary_Governor___RfD1fOoRl3s.f242.webm
[download] Got server HTTP error: HTTP Error 403: Forbidden. Retrying fragment 1 (attempt 1 of 3)...
[download] Got server HTTP error: HTTP Error 403: Forbidden. Retrying fragment 1 (attempt 2 of 3)...
[download] Got server HTTP error: HTTP Error 403: Forbidden. Retrying fragment 1 (attempt 3 of 3)...
ERROR: giving up after 3 fragment retries
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/__main__.py", line 19, in <module>
youtube_dl.main()
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/__init__.py", line 477, in main
_real_main(argv)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/__init__.py", line 467, in _real_main
retcode = ydl.download(all_urls)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 2253, in download
res = self.extract_info(
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 868, in extract_info
return self.__extract_info(url, ie, download, extra_info, process)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 875, in wrapper
return func(self, *args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 982, in __extract_info
return self.process_ie_result(ie_result, download, extra_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 1016, in process_ie_result
return self.process_video_result(ie_result, download=download)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 1860, in process_video_result
self.process_info(new_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 138, in wrapper
return func(self, *args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 2152, in process_info
partial_success = dl(fname, new_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 2088, in dl
return fd.download(name, new_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/downloader/common.py", line 380, in download
return self.real_download(filename, info_dict)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/downloader/dash.py", line 78, in real_download
self.report_error('giving up after %s fragment retries' % count)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/downloader/common.py", line 175, in report_error
self.ydl.report_error(*args, **kargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 678, in report_error
self.trouble(*args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 630, in trouble
tb_data = traceback.format_list(traceback.extract_stack())
[debug] Invoking downloader on 'https://rr1---sn-4g5lznle.googlevideo.com/videoplayback?expire=1722561354&ei=6t6rZsSsNcCgi9oPuPmh-Ak&ip=47.69.169.114&id=o-AOrpWcupmpafDRT5jJ0aaqwXhaN7g3hVRoFLEi9kVq7e&itag=249&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=6T&mm=31%2C26&mn=sn-4g5lznle%2Csn-f5f7kn7z&ms=au%2Conr&mv=m&mvi=1&pl=19&initcwndbps=1712500&bui=AXc671JFI7apstfWNpNKxfyUI0nkQlksUnUgILpmuSAOhoUyOpQmIWR4RCqULf2XuM0ozMlPPpHqm8mm&spc=NO7bAcs8fS6B4X9himXdxQ-F8sOGi4LbKfr8AC327rlaUbRR7VN3_JTnl3SA&vprv=1&svpuc=1&mime=audio%2Fwebm&ns=PZSanBQxVeaKXJ0XUpXp5ngQ&rqh=1&gir=yes&clen=16936580&dur=2650.781&lmt=1721832658250847&mt=1722539374&fvip=2&keepalive=yes&c=WEB&sefc=1&txp=4432434&n=xJzN3kJeyXrp5g&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhANfl9S6HKYwrUMbjJ9oh5BTm29MzrWOCfVYUn6vjHhbYAiB4f2whhIxBP9OgR102xKimRPYQnhxyHiQy042oS3waIA%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AGtxev0wRAIgE9Ku0qDkD7j1s7Y7MBg1wl-cYPhz-u9ULg__zMDz7UECICZji3gl3QrmpVVq4i-2Ms0TkGWIJ8AJNg9lYlZh7kuO'
[dashsegments] Total fragments: 2
[download] Destination: /home/gregorius/home/scripts/video/TEST_NORMAL_Life_As_A_Planetary_Governor___RfD1fOoRl3s.f249.webm
[download] Got server HTTP error: HTTP Error 403: Forbidden. Retrying fragment 1 (attempt 1 of 3)...
[download] Got server HTTP error: HTTP Error 403: Forbidden. Retrying fragment 1 (attempt 2 of 3)...
[download] Got server HTTP error: HTTP Error 403: Forbidden. Retrying fragment 1 (attempt 3 of 3)...
ERROR: giving up after 3 fragment retries
File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/__main__.py", line 19, in <module>
youtube_dl.main()
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/__init__.py", line 477, in main
_real_main(argv)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/__init__.py", line 467, in _real_main
retcode = ydl.download(all_urls)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 2253, in download
res = self.extract_info(
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 868, in extract_info
return self.__extract_info(url, ie, download, extra_info, process)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 875, in wrapper
return func(self, *args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 982, in __extract_info
return self.process_ie_result(ie_result, download, extra_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 1016, in process_ie_result
return self.process_video_result(ie_result, download=download)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 1860, in process_video_result
self.process_info(new_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 138, in wrapper
return func(self, *args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 2152, in process_info
partial_success = dl(fname, new_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 2088, in dl
return fd.download(name, new_info)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/downloader/common.py", line 380, in download
return self.real_download(filename, info_dict)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/downloader/dash.py", line 78, in real_download
self.report_error('giving up after %s fragment retries' % count)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/downloader/common.py", line 175, in report_error
self.ydl.report_error(*args, **kargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 678, in report_error
self.trouble(*args, **kwargs)
File "/home/gregorius/home/scripts/video/youtube-dl-normal/youtube-dl/youtube_dl/YoutubeDL.py", line 630, in trouble
tb_data = traceback.format_list(traceback.extract_stack())
from youtube-dl.
See #32882
from youtube-dl.
minor question, has youtube always had the "sign in to prove you're not a bot" thing? because after the fix this particular error happens with my vpn too now (but not an issue without that particular selfhosted vpn), and i do not know whether that would qualify as a bug or not here, since i am pretty sure you can give ytdl your account info.
from youtube-dl.
Related Issues (20)
- Suntax error in Linux HOT 4
- Amend readme.md HOT 1
- [Youtube] Got server error HTTP Error 403: Forbidden(latest master version) HOT 72
- What do I do when I get this HOT 1
- ERROR: Unable to extract uploader id HOT 2
- Not able to set correct ydl_opts to download a video as mp4 with resolution height as 1080p HOT 9
- Is there a way to select a specific quality for the download? HOT 4
- [Youtube] Unable to extract nsig function code HOT 1
- Sign in to confirm you��re not a bot. This helps protect our community. Learn more
- [Youtube] Unable to decode n-parameter; giving up after 10 fragment retries HOT 4
- [youtube] eeloLUz_uSs: Downloading webpage ERROR: Sign in to confirm you’re not a bot This helps protect our community. Learn more HOT 3
- 无法使用,ERROR: giving up after 0 fragment retries,这是什么原因 HOT 1
- installation pb versus python HOT 2
- [Bug] `youtube-dl https://www.youtube.com/watch?v=YFgRW58mbG4 [youtube] YFgRW58mbG4: Downloading webpage ERROR: Unable to extract uploader id` HOT 1
- Redacted
- [youtube] Sign in to confirm you’re not a bot... HOT 3
- [Instagram] Metadata not found HOT 1
- How to get Youtube URL of this ID HOT 1
- Fails to utilize proxy HOT 7
- youtube-dl thinks there is no "host" at TenPlay HOT 19
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from youtube-dl.