Files
mangaDownloader/manga-py-stable_1.x/manga_py/providers/sunday_webry_com.py
2019-12-14 22:33:14 -05:00

65 lines
2.0 KiB
Python

from manga_py.provider import Provider
from .helpers.std import Std
class SundayWebryCom(Provider, Std):
cdn_url = None
def get_archive_name(self) -> str:
return self.get_chapter_index() # Hmm..
def get_chapter_index(self) -> str:
return self.re.search(r'cti=([^&]*)', self.chapter).group(1)
def get_main_content(self):
return self.http_get('{}/series/{}'.format(
self.domain,
self._get_name(r'/series/(\d+)')
))
def get_manga_name(self) -> str:
return 'sunday_' + self._get_name(r'/series/(\d+)')
def _chapters(self, content):
return self._elements('li[id^="product_"] a.button_free', content)
def get_chapters(self):
pages = self._elements('.pagination')
chapters = self._chapters(self.content)
if pages:
pages = pages[0].cssselect('a:not([class])')
n = self.http().normalize_uri
for i in pages:
chapters += self._chapters(n(i.get('href')))
return chapters
def _prepare_urls(self):
cid = self.re.search('cid=([^&]+)', self.chapter).group(1)
license_url = '{}/api4js/contents/license?cid={}'.format(self.domain, cid)
self.cdn_url = self.json.loads(self.http_get(license_url)).get('url', None)
items = self.json.loads(self.http_get(self.cdn_url + 'configuration_pack.json'))
return items.get('configuration', {}).get('contents', [])
def get_files(self):
items = []
for i in self._prepare_urls():
file = '%s/0.jpeg' % i.get('file')
items.append(self.cdn_url + file)
return items
def after_file_save(self, _path: str, idx: int): # todo issue #36
pass
def get_cover(self) -> str:
return self._cover_from_content('#series .image > img')
def prepare_cookies(self):
self._base_cookies()
def book_meta(self) -> dict:
# todo meta
pass
main = SundayWebryCom