Update workflows/publish_pypi.yml
[manga-dl.git] / manga_py / providers / mangakakalot_com.py
blob2a1a941ed41dc5def5ca32dbb76c73e98a3963f5
1 from manga_py.provider import Provider
2 from .helpers.std import Std
3 from .helpers.manganelo_com_helper import check_alternative_server
6 class MangaKakalotCom(Provider, Std):
7 # __alternative_cdn = 'https://bu2.mkklcdnbuv1.com'
9 def get_chapter_index(self) -> str:
10 re = self.re.search('/chapter_([^/]+)', self.chapter)
11 return re.group(1).replace('.', '-', 2)
13 def get_content(self):
14 return self.http_get(self.get_url())
16 def __new_url(self):
17 from requests import get
18 from sys import stderr
19 with get(self.get_url()) as req:
20 if req.url != self.get_url():
21 print('New url: %s' % req.url, file=stderr)
23 self._params['url'] = req.url
24 self._storage['main_content'] = req.text
26 def get_manga_name(self) -> str:
27 if ~self.get_url().find('/manga/'):
28 self.__new_url()
30 return self._get_name(r'/(?:read-|manga/)(\w+)')
32 def get_chapters(self):
33 return self._elements('.chapter-list span a')
35 def get_files(self):
36 chapter = self.chapter
37 result = self.html_fromstring(chapter, '#vungdoc img, .container-chapter-reader > img')
38 images = [i.get('src') for i in result]
39 return images
40 # check_alternative_server(images, self.__alternative_cdn, headers={
41 # 'Referer': chapter,
42 # 'Accept': 'image/webp,*/*',
43 # })
45 def book_meta(self) -> dict:
46 # todo meta
47 pass
50 main = MangaKakalotCom