class TikTokIE(TikTokBaseIE):
- _VALID_URL = r'''(?x)
- https?://
- (?:
- (?:www|vm)\.
- (?:tiktok.com)\/
- (@(?P<username>[\w\.]+))\/
- (?:video)\/
- )
- (?P<id>[\d]{6,})
- '''
+ _VALID_URL = r'https?://www\.tiktok\.com/@[\w\._]+/video/(?P<id>\d+)'
_TESTS = [{
'url': 'https://www.tiktok.com/@leenabhushan/video/6748451240264420610',
webpage = self._download_webpage(url, video_id, note='Downloading video webpage')
json_string = self._search_regex(
- r'id=\"__NEXT_DATA__\"\s+type=\"application\/json\"\s*[^>]+>\s*(?P<json_string>[^<]+)',
- webpage, 'json_string', group='json_string')
+ r'id=\"__NEXT_DATA__\"\s+type=\"application\/json\"\s*[^>]+>\s*(?P<json_string_ld>[^<]+)',
+ webpage, 'json_string', group='json_string_ld')
json_data = self._parse_json(json_string, video_id)
video_data = try_get(json_data, lambda x: x['props']['pageProps'], expected_type=dict)