[artstation] simplify '_no_cache()'

This commit is contained in:
Mike Fährmann
2025-01-26 16:12:25 +01:00
parent 954796a466
commit 98c068a379

View File

@@ -11,8 +11,6 @@
from .common import Extractor, Message from .common import Extractor, Message
from .. import text, util, exception from .. import text, util, exception
import itertools import itertools
import random
import string
class ArtstationExtractor(Extractor): class ArtstationExtractor(Extractor):
@@ -173,7 +171,7 @@ class ArtstationExtractor(Extractor):
).json()["public_csrf_token"] ).json()["public_csrf_token"]
@staticmethod @staticmethod
def _no_cache(url, alphabet=(string.digits + string.ascii_letters)): def _no_cache(url):
"""Cause a cache miss to prevent Cloudflare 'optimizations' """Cause a cache miss to prevent Cloudflare 'optimizations'
Cloudflare's 'Polish' optimization strips image metadata and may even Cloudflare's 'Polish' optimization strips image metadata and may even
@@ -185,10 +183,9 @@ class ArtstationExtractor(Extractor):
https://github.com/r888888888/danbooru/issues/3528 https://github.com/r888888888/danbooru/issues/3528
https://danbooru.donmai.us/forum_topics/14952 https://danbooru.donmai.us/forum_topics/14952
""" """
param = "gallerydl_no_cache=" + util.bencode(
random.getrandbits(64), alphabet)
sep = "&" if "?" in url else "?" sep = "&" if "?" in url else "?"
return url + sep + param token = util.generate_token(8)
return url + sep + token[:4] + "=" + token[4:]
class ArtstationUserExtractor(ArtstationExtractor): class ArtstationUserExtractor(ArtstationExtractor):