Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Age-gate video - yt_dlp.utils.ExtractorError: This video is unavailable. #581

Closed
Elite opened this issue Jul 28, 2021 · 4 comments
Closed
Labels
bug Bug that is not site-specific

Comments

@Elite
Copy link

Elite commented Jul 28, 2021

  • [X ] I'm reporting a broken site support issue
  • [ X] I've verified that I'm running yt-dlp version 2021.07.24
  • [ X] I've checked that all provided URLs are alive and playable in a browser
  • [X ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
  • [ X] I've searched the bugtracker for similar bug reports including closed ones
  • [X ] I've read bugs section in FAQ

Verbose log

yt-dlp -v -F QWlNyzzwgcc
[debug] Command-line config: ['-v', '-F', 'QWlNyzzwgcc']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] yt-dlp version 2021.07.24 
[debug] Python version 3.7.3 (CPython 64bit) - Linux-4.19.0-6-amd64-x86_64-with-debian-10.2
[debug] exe versions: ffmpeg 4.2.1, ffprobe 4.2.1
[debug] Proxy map: {}
[debug] [youtube] Extracting URL: QWlNyzzwgcc
[youtube] QWlNyzzwgcc: Downloading webpage
[youtube] QWlNyzzwgcc: Downloading android player API JSON
[youtube] QWlNyzzwgcc: Downloading android agegate player API JSON
[youtube] QWlNyzzwgcc: Downloading web agegate player API JSON
ERROR: This video is unavailable.
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/yt_dlp/YoutubeDL.py", line 1152, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/yt_dlp/YoutubeDL.py", line 1177, in __extract_info
    ie_result = ie.extract(url)
  File "/usr/local/lib/python3.7/dist-packages/yt_dlp/extractor/common.py", line 572, in extract
    ie_result = self._real_extract(url)
  File "/usr/local/lib/python3.7/dist-packages/yt_dlp/extractor/youtube.py", line 2769, in _real_extract
    self.raise_no_formats(reason, expected=True)
  File "/usr/local/lib/python3.7/dist-packages/yt_dlp/extractor/common.py", line 1056, in raise_no_formats
    raise ExtractorError(msg, expected=expected, video_id=video_id)
yt_dlp.utils.ExtractorError: This video is unavailable.

While other age-restricted videos work, this does not. Do we have any mitigation available for these?

@MinePlayersPE
Copy link
Contributor

MinePlayersPE commented Jul 28, 2021

This seems to be a case of music embed restrictions, and should be fixed when #577 (5dcbfdc) gets merged:

> py -m yt_dlp -v -F QWlNyzzwgcc
[debug] Command-line config: ['-v', '-F', 'QWlNyzzwgcc']
[debug] Encodings: locale cp1252, fs utf-8, out utf-8, pref cp1252
[debug] yt-dlp version 2021.07.24 (source)
[debug] Plugin Extractors: ['SamplePlugin']
[debug] Python version 3.9.5 (CPython 64bit) - Windows-10-10.0.19043-SP0
[debug] exe versions: none
[debug] Proxy map: {}
[debug] [youtube] Extracting URL: QWlNyzzwgcc
[youtube] QWlNyzzwgcc: Downloading webpage
[youtube] QWlNyzzwgcc: Downloading android player API JSON
[youtube] QWlNyzzwgcc: Downloading android agegate player API JSON
[youtube] QWlNyzzwgcc: Downloading web agegate player API JSON
[debug] Sort order given by extractor: quality, height, fps, source
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, height, fps, source, res, vcodec:vp9.2(10), acodec, filesize, fs_approx, tbr, vbr, abr, asr, proto, vext, aext, hasaud, id
[debug] Testing thumbnail 41
[info] Available formats for QWlNyzzwgcc:
ID  EXT  RESOLUTION FPS |  FILESIZE    TBR PROTO | VCODEC        VBR ACODEC     ABR  ASR    MORE INFO
--- ---- ---------- --- - ---------- ----- ----- - ----------- ----- --------- ---- ------- -----------------
139 m4a  audio only     |  73.07KiB    49k https |                   mp4a.40.5  49k 22050Hz low, m4a_dash
249 webm audio only     |  66.96KiB    45k https |                   opus       45k 48000Hz low, webm_dash
250 webm audio only     |  83.41KiB    56k https |                   opus       56k 48000Hz low, webm_dash
140 m4a  audio only     |  191.37KiB  130k https |                   mp4a.40.2 130k 44100Hz medium, m4a_dash
251 webm audio only     |  150.22KiB  102k https |                   opus      102k 48000Hz medium, webm_dash
17  3gp  176x144    8   |  116.16KiB   78k https | mp4v.20.3     78k mp4a.40.2   0k 22050Hz 144p
160 mp4  82x144     30  |  51.56KiB    35k https | avc1.4d400b   35k                        144p, mp4_dash
278 webm 82x144     30  |  52.53KiB    36k https | vp9           36k                        144p, webm_dash
133 mp4  136x240    30  |  113.95KiB   78k https | avc1.4d400c   78k                        144p, mp4_dash
242 webm 136x240    30  |  110.31KiB   76k https | vp9           76k                        144p, webm_dash
134 mp4  202x360    30  |  246.26KiB  170k https | avc1.4d400d  170k                        240p, mp4_dash
243 webm 202x360    30  |  197.35KiB  136k https | vp9          136k                        240p, webm_dash
135 mp4  270x480    30  |  467.77KiB  322k https | avc1.4d4015  322k                        240p, mp4_dash
18  mp4  270x480    30  |  616.52KiB  419k https | avc1.42001E  419k mp4a.40.2   0k 48000Hz 240p
244 webm 270x480    30  |  338.81KiB  233k https | vp9          233k                        240p, webm_dash
136 mp4  406x720    30  |  936.07KiB  646k https | avc1.64001e  646k                        360p, mp4_dash
22  mp4  406x720    30  |             781k https | avc1.64001F  781k mp4a.40.2   0k 44100Hz 360p
247 webm 406x720    30  |  627.60KiB  433k https | vp9          433k                        360p, webm_dash

@pukkandan pukkandan linked a pull request Jul 28, 2021 that will close this issue
2 tasks
@pukkandan pukkandan added the bug Bug that is not site-specific label Jul 28, 2021
nixxo pushed a commit to nixxo/yt-dlp that referenced this issue Nov 22, 2021
* This allows more videos like `tf2U5Vyj0oU` to become embeddable
    See yt-dlp#575 (comment)
* Also added tests for all types of age-gate

Closes yt-dlp#581
@shakeyourbunny
Copy link

This problem seems to have cropped up again, the youtube extractor seems not to find any formats.

yt-dlp --vv "https://github.com/yt-dlp/yt-dlp/issues/581" --extractor-args "youtube:player-client=android_agegate,web"



[debug] Command-line config: ['-vv', 'https://www.youtube.com/watch?v=laLS5PSYf70', '--extractor-args', 'youtube:player-client=android_agegate,web']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8 (No ANSI), err utf-8 (No ANSI), pref UTF-8
[debug] yt-dlp version 2022.01.21 [f20d607b0] (zip)
[debug] Python version 3.9.6 (CPython 64bit) - Linux-5.12.10-1.el8.elrepo.x86_64-x86_64-with-glibc2.28
[debug] exe versions: ffmpeg 4.2.5, ffprobe 4.2.5, rtmpdump 2.4
[debug] Optional libraries: mutagen, sqlite
[debug] Proxy map: {}
[debug] [youtube] Extracting URL: https://www.youtube.com/watch?v=laLS5PSYf70
[youtube] laLS5PSYf70: Downloading webpage
[youtube] laLS5PSYf70: Downloading android agegate player API JSON
ERROR: [youtube] laLS5PSYf70: Video unavailable
  File "/home/rabbit/bin/yt-dlp/yt_dlp/extractor/common.py", line 612, in extract
    ie_result = self._real_extract(url)
  File "/home/rabbit/bin/yt-dlp/yt_dlp/extractor/youtube.py", line 3238, in _real_extract
    self.raise_no_formats(reason, expected=True)
  File "/home/rabbit/bin/yt-dlp/yt_dlp/extractor/common.py", line 1120, in raise_no_formats
    raise ExtractorError(msg, expected=expected, video_id=video_id)


````

@MinePlayersPE
Copy link
Contributor

@shakeyourbunny ? Also directly setting player clients shouldn't be needed anymore
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Bug that is not site-specific
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants
@shakeyourbunny @Elite @pukkandan @MinePlayersPE and others