aboutsummaryrefslogtreecommitdiffstats
path: root/yt_dlp/extractor
diff options
context:
space:
mode:
Diffstat (limited to 'yt_dlp/extractor')
-rw-r--r--yt_dlp/extractor/instagram.py7
-rw-r--r--yt_dlp/extractor/vlive.py8
-rw-r--r--yt_dlp/extractor/youtube.py2
3 files changed, 9 insertions, 8 deletions
diff --git a/yt_dlp/extractor/instagram.py b/yt_dlp/extractor/instagram.py
index 4694c9a33..0e726423e 100644
--- a/yt_dlp/extractor/instagram.py
+++ b/yt_dlp/extractor/instagram.py
@@ -74,6 +74,7 @@ class InstagramBaseIE(InfoExtractor):
class InstagramIOSIE(InfoExtractor):
+ IE_DESC = 'IOS instagram:// URL'
_VALID_URL = r'instagram://media\?id=(?P<id>[\d_]+)'
_TESTS = [{
'url': 'instagram://media?id=482584233761418119',
@@ -241,7 +242,7 @@ class InstagramIE(InstagramBaseIE):
if 'www.instagram.com/accounts/login' in urlh.geturl().rstrip('/'):
self.raise_login_required('You need to log in to access this content')
- (media, video_url, description, thumbnail, timestamp, uploader,
+ (media, video_url, description, thumbnails, timestamp, uploader,
uploader_id, like_count, comment_count, comments, height,
width) = [None] * 12
@@ -366,8 +367,8 @@ class InstagramIE(InstagramBaseIE):
if description is not None:
description = lowercase_escape(description)
- if not thumbnail:
- thumbnail = self._og_search_thumbnail(webpage)
+ if not thumbnails:
+ thumbnails = self._og_search_thumbnail(webpage)
return {
'id': video_id,
diff --git a/yt_dlp/extractor/vlive.py b/yt_dlp/extractor/vlive.py
index 4340b1d4c..8fccf1b63 100644
--- a/yt_dlp/extractor/vlive.py
+++ b/yt_dlp/extractor/vlive.py
@@ -12,6 +12,7 @@ from ..compat import (
from ..utils import (
ExtractorError,
int_or_none,
+ LazyList,
merge_dicts,
str_or_none,
strip_or_none,
@@ -363,11 +364,10 @@ class VLiveChannelIE(VLiveBaseIE):
if board.get('boardType') not in ('STAR', 'VLIVE_PLUS'):
raise ExtractorError(f'Board {board_name!r} is not supported', expected=True)
- entries = self._entries(posts_id or channel_id, board_name)
- first_video = next(entries)
- channel_name = first_video['channel']
+ entries = LazyList(self._entries(posts_id or channel_id, board_name))
+ channel_name = entries[0]['channel']
return self.playlist_result(
- itertools.chain([first_video], entries),
+ entries,
f'{channel_id}-{posts_id}' if posts_id else channel_id,
f'{channel_name} - {board_name}' if channel_name and board_name else channel_name)
diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py
index 25554c862..7bcd6e7dc 100644
--- a/yt_dlp/extractor/youtube.py
+++ b/yt_dlp/extractor/youtube.py
@@ -4429,7 +4429,7 @@ class YoutubeYtUserIE(InfoExtractor):
def _real_extract(self, url):
user_id = self._match_id(url)
return self.url_result(
- 'https://www.youtube.com/user/%s' % user_id,
+ 'https://www.youtube.com/user/%s/videos' % user_id,
ie=YoutubeTabIE.ie_key(), video_id=user_id)