aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoru-spec-png <54671367+u-spec-png@users.noreply.github.com>2021-10-31 02:54:39 +0000
committerGitHub <noreply@github.com>2021-10-31 08:24:39 +0530
commitcd9ea4104b8b5075ea4bfe92c76130e267686805 (patch)
tree40f422dd2d7c2ea850fc904f55f35186d274c53c
parent652fb0d446524af4b783276babd55f5fc6a3afeb (diff)
downloadhypervideo-pre-cd9ea4104b8b5075ea4bfe92c76130e267686805.tar.lz
hypervideo-pre-cd9ea4104b8b5075ea4bfe92c76130e267686805.tar.xz
hypervideo-pre-cd9ea4104b8b5075ea4bfe92c76130e267686805.zip
[instagram] Add more formats when logged in (#1487)
Authored by: u-spec-png
-rw-r--r--yt_dlp/extractor/instagram.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/yt_dlp/extractor/instagram.py b/yt_dlp/extractor/instagram.py
index ccfcddd5b..8c935c251 100644
--- a/yt_dlp/extractor/instagram.py
+++ b/yt_dlp/extractor/instagram.py
@@ -222,8 +222,8 @@ class InstagramIE(InfoExtractor):
dict)
if media:
video_url = media.get('video_url')
- height = int_or_none(media.get('dimensions', {}).get('height'))
- width = int_or_none(media.get('dimensions', {}).get('width'))
+ height = try_get(media, lambda x: x['dimensions']['height'])
+ width = try_get(media, lambda x: x['dimensions']['width'])
description = try_get(
media, lambda x: x['edge_media_to_caption']['edges'][0]['node']['text'],
compat_str) or media.get('caption')
@@ -231,8 +231,8 @@ class InstagramIE(InfoExtractor):
thumbnail = media.get('display_src') or media.get('display_url')
duration = float_or_none(media.get('video_duration'))
timestamp = int_or_none(media.get('taken_at_timestamp') or media.get('date'))
- uploader = media.get('owner', {}).get('full_name')
- uploader_id = media.get('owner', {}).get('username')
+ uploader = try_get(media, lambda x: x['owner']['full_name'])
+ uploader_id = try_get(media, lambda x: x['owner']['username'])
def get_count(keys, kind):
for key in variadic(keys):
@@ -294,6 +294,10 @@ class InstagramIE(InfoExtractor):
'width': width,
'height': height,
}]
+ dash = try_get(media, lambda x: x['dash_info']['video_dash_manifest'])
+ if dash:
+ formats.extend(self._parse_mpd_formats(self._parse_xml(dash, video_id), mpd_id='dash'))
+ self._sort_formats(formats)
if not uploader_id:
uploader_id = self._search_regex(