From f80e2941328f2dbe7c9a7ece6a3be20f1d17c0ea Mon Sep 17 00:00:00 2001 From: CasualYouTuber31 <21147925+CasualYT31@users.noreply.github.com> Date: Mon, 26 Jan 2026 07:54:42 +0000 Subject: [PATCH] [tiktok] Fix account extraction (#8931) Was inadvertently caused by recent changes to range predicates Fixes regression introduced in c23beee57caa72b10e659dadea81cbf1e75e0936 --- gallery_dl/extractor/tiktok.py | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/gallery_dl/extractor/tiktok.py b/gallery_dl/extractor/tiktok.py index 743e4510..4d5d8112 100644 --- a/gallery_dl/extractor/tiktok.py +++ b/gallery_dl/extractor/tiktok.py @@ -36,7 +36,7 @@ class TiktokExtractor(Extractor): self.cover = self.config("covers", False) self.range = self.config("tiktok-range") or "" - self.range_predicate = util.predicate_range(self.range) + self.range_predicate = util.predicate_range_parse(self.range) def items(self): for tiktok_url in self.posts(): @@ -1137,14 +1137,11 @@ class TiktokItemListRequest(TiktokPaginationRequest): url, self.type_of_items) return True if not self.range_predicate: - # No range predicate given. - return False - if len(self.range_predicate.ranges) == 0: - # No range predicates given in the predicate object. + # No range predicates given. return False # If our current selection of items can't satisfy the upper bound of # the predicate, we must continue extracting them until we can. - return len(self.items) > self.range_predicate.upper + return len(self.items) > max(r.stop for r in self.range_predicate) - 1 def generate_urls(self, profile_url, video, photo, audio): urls = [] @@ -1168,8 +1165,8 @@ class TiktokItemListRequest(TiktokPaginationRequest): # First, check if this index falls within any of our configured ranges. # If it doesn't, we filter it out. if self.range_predicate: - range_match = len(self.range_predicate.ranges) == 0 - for range in self.range_predicate.ranges: + range_match = False + for range in self.range_predicate: if index in range: range_match = True break