Files
gallery-dl/gallery_dl/extractor/sxypix.py
MyFinalBellyache 157a37b053 [sxypix] add support (#4507 #8391 #8574)
* Add support for sxypix.com
* update & simplify
    - text.extract -> text.extr
    - self.request().json() -> self.request_json()
    - use self.groups
    - remove __init__
    - list comprehension
* update test results

---------

Co-authored-by: Mike Fährmann <mike_faehrmann@web.de>
2025-11-19 10:30:29 +01:00

40 lines
1.2 KiB
Python

# -*- coding: utf-8 -*-
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
"""Extractors for https://sxypix.com/"""
from .common import GalleryExtractor
from .. import text
class SxypixGalleryExtractor(GalleryExtractor):
"""Extractor for image galleries from sxypix.com"""
category = "sxypix"
root = "https://sxypix.com"
pattern = r"(?:https?://)?(?:www\.)?sxypix\.com(/w/(\w+))"
example = "https://sxypix.com/w/2bbaf1b24a5863d0e73436619bbaa7ee"
def metadata(self, page):
return {
"gallery_id": self.groups[1],
"title": text.unescape(text.extr(
page, '<meta name="keywords" content="', '"')),
}
def images(self, page):
data = {
"aid" : text.extr(page, "data-aid='", "'"),
"ghash": text.extr(page, "data-ghash='", "'"),
}
gallery = self.request_json(
"https://sxypix.com/php/gall.php", method="POST", data=data)
base = "https://x."
return [
(base + text.extr(entry, "data-src='//.", "'"), None)
for entry in gallery["r"]
]