automatically set required DDoS-GUARD cookies (#1779)

for kemono.party and seiso.party
pull/1787/head
Mike Fährmann 3 years ago
parent bd08ee2859
commit bb6a130942
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88

@ -339,6 +339,11 @@ class Extractor():
return True
return False
def _prepare_ddosguard_cookies(self):
if not self._cookiejar.get("__ddg2", domain=self.cookiedomain):
self._cookiejar.set(
"__ddg2", util.generate_token(), domain=self.cookiedomain)
def _get_date_min_max(self, dmin=None, dmax=None):
"""Retrieve and parse 'date-min' and 'date-max' config values"""
def get(key, default):

@ -24,13 +24,9 @@ class KemonopartyExtractor(Extractor):
filename_fmt = "{id}_{title}_{num:>02}_{filename}.{extension}"
archive_fmt = "{service}_{user}_{id}_{num}"
cookiedomain = ".kemono.party"
_warning = True
def items(self):
if self._warning:
if not self._check_cookies(("__ddg1", "__ddg2")):
self.log.warning("no DDoS-GUARD cookies set (__ddg1, __ddg2)")
KemonopartyExtractor._warning = False
self._prepare_ddosguard_cookies()
find_inline = re.compile(r'src="(/inline/[^"]+)').findall
skip_service = \

@ -21,7 +21,6 @@ class SeisopartyExtractor(Extractor):
filename_fmt = "{id}_{title}_{num:>02}_{filename}.{extension}"
archive_fmt = "{service}_{user}_{id}_{num}"
cookiedomain = ".seiso.party"
_warning = True
def __init__(self, match):
Extractor.__init__(self, match)
@ -30,10 +29,7 @@ class SeisopartyExtractor(Extractor):
r'href="(https://cdn(?:-\d)?\.seiso\.party/files/[^"]+)').findall
def items(self):
if self._warning:
if not self._check_cookies(("__ddg1", "__ddg2")):
self.log.warning("no DDoS-GUARD cookies set (__ddg1, __ddg2)")
SeisopartyExtractor._warning = False
self._prepare_ddosguard_cookies()
for post in self.posts():
files = post.pop("files")

@ -314,11 +314,6 @@ def setup_test_config():
"e621", "inkbunny", "tapas", "pillowfort", "mangadex"):
config.set(("extractor", category), "username", None)
config.set(("extractor", "kemonoparty"), "cookies", {
"__ddg1": "0gBDGpJ3KZQmA4B9QH25", "__ddg2": "lmj5s1jnJOvhPXCX"})
config.set(("extractor", "seisoparty"), "cookies", {
"__ddg1": "Y8rBxSDHO5UCEtQvzyI9", "__ddg2": "lmj5s1jnJOvhPXCX"})
config.set(("extractor", "mastodon.social"), "access-token",
"Blf9gVqG7GytDTfVMiyYQjwVMQaNACgf3Ds3IxxVDUQ")

Loading…
Cancel
Save