dosage/dosagelib/plugins/clonemanga.py
2020-07-31 22:56:30 +02:00

48 lines
1.8 KiB
Python

# SPDX-License-Identifier: MIT
# Copyright (C) 2004-2008 Tristan Seligmann and Jonathan Jacobs
# Copyright (C) 2012-2014 Bastian Kleineidam
# Copyright (C) 2015-2020 Tobias Gruetzmacher
from ..helpers import indirectStarter
from ..scraper import _ParserScraper
from ..util import getQueryParams
class CloneManga(_ParserScraper):
baseUrl = 'http://manga.clone-army.org'
imageSearch = '//div[d:class("subsectionContainer")]//img'
prevSearch = '//a[span[text()="<<"]]'
latestSearch = '//a[span[text()=">|"]]'
starter = indirectStarter
help = 'Index format: n'
def __init__(self, name, shortName, endOfLife=False):
super(CloneManga, self).__init__('CloneManga/' + name)
self.stripUrl = '%s/viewer.php?page=%%s&lang=&series=%s&HUDoff=' % (
self.baseUrl, shortName)
self.url = self.stripUrl % '1'
self.endOfLife = endOfLife
def namer(self, image_url, page_url):
origname = image_url.rsplit('/', 1)[1]
params = getQueryParams(page_url)
if 'page' in params:
return '{:03}_{}'.format(int(params['page'][0]), origname)
else:
return origname
@classmethod
def getmodules(cls):
return (
cls('ACaptainsWorries', 'captains_worries'),
cls('AHimehornsDailyLife', 'himehorn'),
cls('AprilAndMay', 'anm', endOfLife=True),
cls('DollAndMaker', 'maria_doll', endOfLife=True),
cls('Kanami', 'kanami', endOfLife=True),
cls('MomokaCorner', 'momoka', endOfLife=True),
cls('MyShutInVampirePrincess', 'snax'),
cls('NanasEverydayLife', 'nana', endOfLife=True),
cls('NNN', 'nnn', endOfLife=True),
cls('PaperEleven', 'pxi', endOfLife=True),
cls('PennyTribute', 'penny', endOfLife=True),
cls('Tomoyo42sRoom', 't42r'),
)