Added manga-py source
This commit is contained in:
55
manga-py-stable_1.x/manga_py/providers/mangasaurus_com.py
Normal file
55
manga-py-stable_1.x/manga_py/providers/mangasaurus_com.py
Normal file
@@ -0,0 +1,55 @@
|
||||
from manga_py.provider import Provider
|
||||
from .helpers.std import Std
|
||||
|
||||
|
||||
class MangaSaurusCom(Provider, Std):
|
||||
|
||||
def get_chapter_index(self) -> str:
|
||||
return str(self.chapter_id)
|
||||
|
||||
def get_main_content(self):
|
||||
return self.http_get('{}/manga/{}/{}'.format(
|
||||
self.domain,
|
||||
*self.manga_name.split('_')
|
||||
))
|
||||
|
||||
def get_manga_name(self) -> str:
|
||||
url = self.get_url()
|
||||
if ~url.find('/view/'):
|
||||
url = self.html_fromstring(url, '#m_reader_bottom + div > a', 0).get('href')
|
||||
result = self.re.search(r'/manga/(\d+)/([^/]+)', url).groups()
|
||||
return '{1}_{0}'.format(*result)
|
||||
|
||||
def get_chapters(self):
|
||||
return self._elements('.table--chapters td > a')[::-1]
|
||||
|
||||
def __files_helper(self):
|
||||
content = self.http_get(self.chapter)
|
||||
_path = self.document_fromstring(content, '#imageZone-next > img', 0).get('src')
|
||||
path = self.re.search('(http.+?/original)/', _path).group(1) + '/{}/{}-{}{}'
|
||||
parser = self.re.search(r'ImageReader\.setImages.+?(\{.+\})', content)
|
||||
return path, parser
|
||||
|
||||
def get_files(self):
|
||||
path, parser = self.__files_helper()
|
||||
if not parser:
|
||||
return []
|
||||
images = []
|
||||
o = self.json.loads(parser.group(1))
|
||||
for i in o:
|
||||
n = o.get(i)
|
||||
_ = n.get('original', {}).get('file', '')
|
||||
idx = _.find('.')
|
||||
src = path.format(_[:idx], self.manga_name, n['id'], _[idx:])
|
||||
images.append(src)
|
||||
return images
|
||||
|
||||
def get_cover(self):
|
||||
self._cover_from_content('.gallery-info__cover img')
|
||||
|
||||
def book_meta(self) -> dict:
|
||||
# todo meta
|
||||
pass
|
||||
|
||||
|
||||
main = MangaSaurusCom
|
||||
Reference in New Issue
Block a user