mirror of
https://github.com/ytdl-org/youtube-dl
synced 2025-12-04 10:33:48 +00:00
[YouTube] Revert forcing player JS by default
* still leaving the parameters in place thx bashonly for confirming this suggestion
This commit is contained in:
parent
6315f4b1df
commit
d0283f5385
@ -1699,7 +1699,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
||||
self._player_cache = {}
|
||||
|
||||
def _get_player_js_version(self):
|
||||
player_js_version = self.get_param('youtube_player_js_version') or '20348@0004de42'
|
||||
player_js_version = self.get_param('youtube_player_js_version')
|
||||
if player_js_version:
|
||||
sts_hash = self._search_regex(
|
||||
('^actual$(^)?(^)?', r'^([0-9]{5,})@([0-9a-f]{8,})$'),
|
||||
player_js_version, 'player_js_version', group=(1, 2), default=None)
|
||||
@ -1723,18 +1724,18 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
||||
ytcfgs = ytcfgs + ({'PLAYER_JS_URL': player_url},)
|
||||
player_url = traverse_obj(
|
||||
ytcfgs, (Ellipsis, 'PLAYER_JS_URL'), (Ellipsis, 'WEB_PLAYER_CONTEXT_CONFIGS', Ellipsis, 'jsUrl'),
|
||||
get_all=False, expected_type=lambda u: urljoin('https://www.youtube.com', u))
|
||||
get_all=False, expected_type=self._yt_urljoin)
|
||||
|
||||
player_id_override = self._get_player_js_version()[1]
|
||||
|
||||
requested_js_variant = self.get_param('youtube_player_js_variant') or 'main'
|
||||
requested_js_variant = self.get_param('youtube_player_js_variant')
|
||||
variant_js = next(
|
||||
(v for k, v in self._PLAYER_JS_VARIANT_MAP if k == requested_js_variant),
|
||||
None)
|
||||
if variant_js:
|
||||
player_id_override = self._get_player_js_version()[1]
|
||||
player_id = player_id_override or self._extract_player_info(player_url)
|
||||
original_url = player_url
|
||||
player_url = '/s/player/{0}/{1}'.format(player_id, variant_js)
|
||||
player_url = self._yt_urljoin(
|
||||
'/s/player/{0}/{1}'.format(player_id, variant_js))
|
||||
if original_url != player_url:
|
||||
self.write_debug(
|
||||
'Forcing "{0}" player JS variant for player {1}\n'
|
||||
@ -1748,7 +1749,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
||||
requested_js_variant, ','.join(k for k, _ in self._PLAYER_JS_VARIANT_MAP)),
|
||||
only_once=True)
|
||||
|
||||
return urljoin('https://www.youtube.com', player_url)
|
||||
return player_url
|
||||
|
||||
def _download_player_url(self, video_id, fatal=False):
|
||||
res = self._download_webpage(
|
||||
|
||||
@ -421,12 +421,12 @@ def parseOpts(overrideArguments=None):
|
||||
action='store', dest='youtube_player_js_variant',
|
||||
help='For YouTube, the player javascript variant to use for n/sig deciphering; `actual` to follow the site; default `%default`.',
|
||||
choices=('actual', 'main', 'tcc', 'tce', 'es5', 'es6', 'tv', 'tv_es6', 'phone', 'tablet'),
|
||||
default='main', metavar='VARIANT')
|
||||
default='actual', metavar='VARIANT')
|
||||
video_format.add_option(
|
||||
'--youtube-player-js-version',
|
||||
action='store', dest='youtube_player_js_version',
|
||||
help='For YouTube, the player javascript version to use for n/sig deciphering, specified as `signature_timestamp@hash`, or `actual` to follow the site; default `%default`',
|
||||
default='20348@0004de42', metavar='STS@HASH')
|
||||
default='actual', metavar='STS@HASH')
|
||||
video_format.add_option(
|
||||
'--merge-output-format',
|
||||
action='store', dest='merge_output_format', metavar='FORMAT', default=None,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user