summaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/civitai.py
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2025-10-14 00:23:10 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2025-10-14 00:23:10 -0400
commit33f8a8a37a9cba738ef25fb99955f0730da9eb48 (patch)
treeb51fb48b160f5e5e034e6b4542e6f00703bae7ec /gallery_dl/extractor/civitai.py
parentbbe7fac03d881662a458e7fbf870c9d71f5257f4 (diff)
New upstream version 1.30.10.upstream/1.30.10
Diffstat (limited to 'gallery_dl/extractor/civitai.py')
-rw-r--r--gallery_dl/extractor/civitai.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/gallery_dl/extractor/civitai.py b/gallery_dl/extractor/civitai.py
index d5cf996..26ee3fd 100644
--- a/gallery_dl/extractor/civitai.py
+++ b/gallery_dl/extractor/civitai.py
@@ -807,7 +807,8 @@ class CivitaiTrpcAPI():
})
params = self._type_params(params)
- return self._pagination(endpoint, params, meta)
+ return self._pagination(endpoint, params, meta,
+ user=("username" in params))
def collection(self, collection_id):
endpoint = "collection.getById"
@@ -854,13 +855,17 @@ class CivitaiTrpcAPI():
return self.extractor.request_json(
url, params=params, headers=headers)["result"]["data"]["json"]
- def _pagination(self, endpoint, params, meta=None):
+ def _pagination(self, endpoint, params, meta=None, user=False):
if "cursor" not in params:
params["cursor"] = None
meta_ = {"cursor": ("undefined",)}
+ data = self._call(endpoint, params, meta_)
+ if user and data["items"] and \
+ data["items"][0]["user"]["username"] != params["username"]:
+ return ()
+
while True:
- data = self._call(endpoint, params, meta_)
yield from data["items"]
try:
@@ -871,6 +876,7 @@ class CivitaiTrpcAPI():
params["cursor"] = data["nextCursor"]
meta_ = meta
+ data = self._call(endpoint, params, meta_)
def _merge_params(self, params_user, params_default):
"""Combine 'params_user' with 'params_default'"""