logo

youtube-dl

[mirror] Download/Watch videos from video hostersgit clone https://hacktivis.me/git/mirror/youtube-dl.git
commit: 21ccd0d7f46002acc61eb21bd0d4e492064c7fe1
parent 7e79ba7dd6e6649dd2ce3a74004b2044f2182881
Author: Remita Amine <remitamine@gmail.com>
Date:   Sun, 21 Mar 2021 09:10:38 +0100

[tiktok] detect private videos(closes #28453)

Diffstat:

Myoutube_dl/extractor/tiktok.py7+++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/youtube_dl/extractor/tiktok.py b/youtube_dl/extractor/tiktok.py @@ -107,9 +107,12 @@ class TikTokIE(TikTokBaseIE): def _real_extract(self, url): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) - data = self._parse_json(self._search_regex( + page_props = self._parse_json(self._search_regex( r'<script[^>]+\bid=["\']__NEXT_DATA__[^>]+>\s*({.+?})\s*</script', - webpage, 'data'), video_id)['props']['pageProps']['itemInfo']['itemStruct'] + webpage, 'data'), video_id)['props']['pageProps'] + data = try_get(page_props, lambda x: x['itemInfo']['itemStruct'], dict) + if not data and page_props.get('statusCode') == 10216: + raise ExtractorError('This video is private', expected=True) return self._extract_video(data, video_id)