From 451ed237378f167a5a1a61c5fbf3138e52e0270f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Sun, 1 Feb 2026 19:48:15 +0100 Subject: [PATCH] [discord:server-search] use 'max_id' for pagination 'offset' is limited to 10_000 'max_id' is hopefully not --- gallery_dl/extractor/discord.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/gallery_dl/extractor/discord.py b/gallery_dl/extractor/discord.py index 77267149..6b91ae01 100644 --- a/gallery_dl/extractor/discord.py +++ b/gallery_dl/extractor/discord.py @@ -447,8 +447,17 @@ class DiscordAPI(): MESSAGES_BATCH = 25 def _method(offset): - params["offset"] = offset - return self._call(url, params)["messages"] + messages = self._call(url, params)["messages"] + + max_id = 0 + for msgs in messages: + for msg in msgs: + mid = int(msg["id"]) + if max_id > mid or not max_id: + max_id = mid + params["max_id"] = max_id + + return messages url = f"/guilds/{server_id}/messages/search" return self._pagination(_method, MESSAGES_BATCH)