mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-11-04 00:25:15 +00:00 
			
		
		
		
	[youtube] add support youtubekids.com(closes #23272)
This commit is contained in:
		@@ -69,7 +69,7 @@ class YoutubeBaseInfoExtractor(InfoExtractor):
 | 
			
		||||
    # If True it will raise an error if no login info is provided
 | 
			
		||||
    _LOGIN_REQUIRED = False
 | 
			
		||||
 | 
			
		||||
    _PLAYLIST_ID_RE = r'(?:PL|LL|EC|UU|FL|RD|UL|TL|OLAK5uy_)[0-9A-Za-z-_]{10,}'
 | 
			
		||||
    _PLAYLIST_ID_RE = r'(?:PL|LL|EC|UU|FL|RD|UL|TL|PU|OLAK5uy_)[0-9A-Za-z-_]{10,}'
 | 
			
		||||
 | 
			
		||||
    def _set_language(self):
 | 
			
		||||
        self._set_cookie(
 | 
			
		||||
@@ -372,7 +372,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
 | 
			
		||||
    _VALID_URL = r"""(?x)^
 | 
			
		||||
                     (
 | 
			
		||||
                         (?:https?://|//)                                    # http(s):// or protocol-independent URL
 | 
			
		||||
                         (?:(?:(?:(?:\w+\.)?[yY][oO][uU][tT][uU][bB][eE](?:-nocookie)?\.com/|
 | 
			
		||||
                         (?:(?:(?:(?:\w+\.)?[yY][oO][uU][tT][uU][bB][eE](?:-nocookie|kids)?\.com/|
 | 
			
		||||
                            (?:www\.)?deturl\.com/www\.youtube\.com/|
 | 
			
		||||
                            (?:www\.)?pwnyoutube\.com/|
 | 
			
		||||
                            (?:www\.)?hooktube\.com/|
 | 
			
		||||
@@ -1224,6 +1224,10 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
 | 
			
		||||
                'skip_download': True,
 | 
			
		||||
            },
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            'url': 'https://www.youtubekids.com/watch?v=3b8nCWDgZ6Q',
 | 
			
		||||
            'only_matching': True,
 | 
			
		||||
        },
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    def __init__(self, *args, **kwargs):
 | 
			
		||||
@@ -2465,7 +2469,7 @@ class YoutubePlaylistIE(YoutubePlaylistBaseInfoExtractor):
 | 
			
		||||
                        (?:\w+\.)?
 | 
			
		||||
                        (?:
 | 
			
		||||
                            (?:
 | 
			
		||||
                                youtube\.com|
 | 
			
		||||
                                youtube(?:kids)?\.com|
 | 
			
		||||
                                invidio\.us
 | 
			
		||||
                            )
 | 
			
		||||
                            /
 | 
			
		||||
@@ -2477,7 +2481,7 @@ class YoutubePlaylistIE(YoutubePlaylistBaseInfoExtractor):
 | 
			
		||||
                            youtu\.be/[0-9A-Za-z_-]{11}\?.*?\blist=
 | 
			
		||||
                        )
 | 
			
		||||
                        (
 | 
			
		||||
                            (?:PL|LL|EC|UU|FL|RD|UL|TL|OLAK5uy_)?[0-9A-Za-z-_]{10,}
 | 
			
		||||
                            (?:PL|LL|EC|UU|FL|RD|UL|TL|PU|OLAK5uy_)?[0-9A-Za-z-_]{10,}
 | 
			
		||||
                            # Top tracks, they can also include dots
 | 
			
		||||
                            |(?:MC)[\w\.]*
 | 
			
		||||
                        )
 | 
			
		||||
@@ -2647,6 +2651,9 @@ class YoutubePlaylistIE(YoutubePlaylistBaseInfoExtractor):
 | 
			
		||||
    }, {
 | 
			
		||||
        'url': 'https://invidio.us/playlist?list=PLDIoUOhQQPlXr63I_vwF9GD8sAKh77dWU',
 | 
			
		||||
        'only_matching': True,
 | 
			
		||||
    }, {
 | 
			
		||||
        'url': 'https://www.youtubekids.com/watch?v=Agk7R8I8o5U&list=PUZ6jURNr1WQZCNHF0ao-c0g',
 | 
			
		||||
        'only_matching': True,
 | 
			
		||||
    }]
 | 
			
		||||
 | 
			
		||||
    def _real_initialize(self):
 | 
			
		||||
@@ -2817,7 +2824,7 @@ class YoutubePlaylistIE(YoutubePlaylistBaseInfoExtractor):
 | 
			
		||||
 | 
			
		||||
class YoutubeChannelIE(YoutubePlaylistBaseInfoExtractor):
 | 
			
		||||
    IE_DESC = 'YouTube.com channels'
 | 
			
		||||
    _VALID_URL = r'https?://(?:youtu\.be|(?:\w+\.)?youtube(?:-nocookie)?\.com|(?:www\.)?invidio\.us)/channel/(?P<id>[0-9A-Za-z_-]+)'
 | 
			
		||||
    _VALID_URL = r'https?://(?:youtu\.be|(?:\w+\.)?youtube(?:-nocookie|kids)?\.com|(?:www\.)?invidio\.us)/channel/(?P<id>[0-9A-Za-z_-]+)'
 | 
			
		||||
    _TEMPLATE_URL = 'https://www.youtube.com/channel/%s/videos'
 | 
			
		||||
    _VIDEO_RE = r'(?:title="(?P<title>[^"]+)"[^>]+)?href="/watch\?v=(?P<id>[0-9A-Za-z_-]+)&?'
 | 
			
		||||
    IE_NAME = 'youtube:channel'
 | 
			
		||||
@@ -2845,6 +2852,9 @@ class YoutubeChannelIE(YoutubePlaylistBaseInfoExtractor):
 | 
			
		||||
    }, {
 | 
			
		||||
        'url': 'https://invidio.us/channel/UC23qupoDRn9YOAVzeoxjOQA',
 | 
			
		||||
        'only_matching': True,
 | 
			
		||||
    }, {
 | 
			
		||||
        'url': 'https://www.youtubekids.com/channel/UCyu8StPfZWapR6rfW_JgqcA',
 | 
			
		||||
        'only_matching': True,
 | 
			
		||||
    }]
 | 
			
		||||
 | 
			
		||||
    @classmethod
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user