aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpukkandan <pukkandan.ytdlp@gmail.com>2022-04-08 14:46:05 +0530
committerpukkandan <pukkandan.ytdlp@gmail.com>2022-04-08 14:46:45 +0530
commit11e1c2e3f8092f2d1059bf7265f093595198ef20 (patch)
tree9b55d437c7ffd1a0d2010d7556c59a35bd76836f
parentebc7d3ff1f39a2f71ab7360ce25a37da744c8f3e (diff)
downloadhypervideo-pre-11e1c2e3f8092f2d1059bf7265f093595198ef20.tar.lz
hypervideo-pre-11e1c2e3f8092f2d1059bf7265f093595198ef20.tar.xz
hypervideo-pre-11e1c2e3f8092f2d1059bf7265f093595198ef20.zip
[TikTokVM] Fix redirect to user URL
Closes #3349, Closes #3351
-rw-r--r--yt_dlp/extractor/tiktok.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/yt_dlp/extractor/tiktok.py b/yt_dlp/extractor/tiktok.py
index c1d6c5477..987b0c43b 100644
--- a/yt_dlp/extractor/tiktok.py
+++ b/yt_dlp/extractor/tiktok.py
@@ -15,6 +15,7 @@ from ..compat import (
from ..utils import (
ExtractorError,
HEADRequest,
+ UnsupportedError,
get_first,
int_or_none,
join_nonempty,
@@ -890,5 +891,8 @@ class TikTokVMIE(InfoExtractor):
}]
def _real_extract(self, url):
- return self.url_result(self._request_webpage(
- HEADRequest(url), self._match_id(url), headers={'User-Agent': 'facebookexternalhit/1.1'}).geturl(), TikTokIE)
+ new_url = self._request_webpage(
+ HEADRequest(url), self._match_id(url), headers={'User-Agent': 'facebookexternalhit/1.1'}).geturl()
+ if self.suitable(new_url): # Prevent infinite loop in case redirect fails
+ raise UnsupportedError(new_url)
+ return self.url_result(new_url)