* 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>
This commit is contained in:
@@ -192,6 +192,7 @@ modules = [
|
||||
"speakerdeck",
|
||||
"steamgriddb",
|
||||
"subscribestar",
|
||||
"sxypix",
|
||||
"szurubooru",
|
||||
"tapas",
|
||||
"tcbscans",
|
||||
|
||||
39
gallery_dl/extractor/sxypix.py
Normal file
39
gallery_dl/extractor/sxypix.py
Normal file
@@ -0,0 +1,39 @@
|
||||
# -*- 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"]
|
||||
]
|
||||
Reference in New Issue
Block a user