mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-27 23:26:53 +01:00
[youtube] Parse player_url if format URLs are encrypted or DASH MPDs are requested
Fixes #13211
This commit is contained in:
parent
a846173d93
commit
a49eccdfa7
@ -1,6 +1,8 @@
|
|||||||
version <unreleased>
|
version <unreleased>
|
||||||
|
|
||||||
Extractors
|
Extractors
|
||||||
|
* [youtube] Fix DASH MPD extraction for videos with non-encrypted format URLs
|
||||||
|
(#13211)
|
||||||
+ [youku] Extract more metadata (#10433)
|
+ [youku] Extract more metadata (#10433)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1715,12 +1715,8 @@ def _extract_count(count_name):
|
|||||||
format_id = url_data['itag'][0]
|
format_id = url_data['itag'][0]
|
||||||
url = url_data['url'][0]
|
url = url_data['url'][0]
|
||||||
|
|
||||||
if 'sig' in url_data:
|
if 's' in url_data or self._downloader.params.get('youtube_include_dash_manifest', True):
|
||||||
url += '&signature=' + url_data['sig'][0]
|
|
||||||
elif 's' in url_data:
|
|
||||||
encrypted_sig = url_data['s'][0]
|
|
||||||
ASSETS_RE = r'"assets":.+?"js":\s*("[^"]+")'
|
ASSETS_RE = r'"assets":.+?"js":\s*("[^"]+")'
|
||||||
|
|
||||||
jsplayer_url_json = self._search_regex(
|
jsplayer_url_json = self._search_regex(
|
||||||
ASSETS_RE,
|
ASSETS_RE,
|
||||||
embed_webpage if age_gate else video_webpage,
|
embed_webpage if age_gate else video_webpage,
|
||||||
@ -1741,6 +1737,11 @@ def _extract_count(count_name):
|
|||||||
video_webpage, 'age gate player URL')
|
video_webpage, 'age gate player URL')
|
||||||
player_url = json.loads(player_url_json)
|
player_url = json.loads(player_url_json)
|
||||||
|
|
||||||
|
if 'sig' in url_data:
|
||||||
|
url += '&signature=' + url_data['sig'][0]
|
||||||
|
elif 's' in url_data:
|
||||||
|
encrypted_sig = url_data['s'][0]
|
||||||
|
|
||||||
if self._downloader.params.get('verbose'):
|
if self._downloader.params.get('verbose'):
|
||||||
if player_url is None:
|
if player_url is None:
|
||||||
player_version = 'unknown'
|
player_version = 'unknown'
|
||||||
|
Loading…
Reference in New Issue
Block a user