dosage/dosagelib/plugins/clonemanga.py

49 lines
1.8 KiB
Python
Raw Normal View History

# SPDX-License-Identifier: MIT
2016-10-28 22:21:41 +00:00
# Copyright (C) 2004-2008 Tristan Seligmann and Jonathan Jacobs
2014-01-05 15:50:57 +00:00
# Copyright (C) 2012-2014 Bastian Kleineidam
# Copyright (C) 2015-2022 Tobias Gruetzmacher
from ..helpers import indirectStarter
from ..scraper import ParserScraper
2017-02-13 22:41:45 +00:00
from ..util import getQueryParams
2012-12-04 06:02:40 +00:00
class CloneManga(ParserScraper):
2017-02-13 22:41:45 +00:00
baseUrl = 'http://manga.clone-army.org'
imageSearch = '//div[d:class("subsectionContainer")]//img'
2017-02-13 22:41:45 +00:00
prevSearch = '//a[span[text()="<<"]]'
latestSearch = '//a[span[text()=">|"]]'
starter = indirectStarter
help = 'Index format: n'
2012-12-04 06:02:40 +00:00
2017-02-13 22:41:45 +00:00
def __init__(self, name, shortName, endOfLife=False):
super().__init__('CloneManga/' + name)
2017-02-13 22:41:45 +00:00
self.stripUrl = '%s/viewer.php?page=%%s&lang=&series=%s&HUDoff=' % (
self.baseUrl, shortName)
self.url = self.stripUrl % '1'
self.endOfLife = endOfLife
2012-12-04 06:02:40 +00:00
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
2012-12-04 06:02:40 +00:00
@classmethod
def getmodules(cls):
2017-02-13 22:41:45 +00:00
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'),
2017-02-13 22:41:45 +00:00
)