Added manga-py source
This commit is contained in:
69
manga-py-stable_1.x/manga_py/providers/7sama_com.py
Normal file
69
manga-py-stable_1.x/manga_py/providers/7sama_com.py
Normal file
@@ -0,0 +1,69 @@
|
||||
from manga_py.provider import Provider
|
||||
from .helpers.std import Std
|
||||
|
||||
|
||||
class SevenSamaCom(Provider, Std):
|
||||
|
||||
def get_archive_name(self) -> str:
|
||||
self._vol_fill = True
|
||||
name = self.re.sub('[^a-zA-Z0-9]+', '_', self.chapter['chapter_name'])
|
||||
return self.normal_arc_name([
|
||||
self.chapter['number'],
|
||||
str(self.chapter_id),
|
||||
name
|
||||
])
|
||||
|
||||
def get_chapter_index(self) -> str:
|
||||
return self.chapter_id
|
||||
|
||||
def get_main_content(self):
|
||||
return self._get_content('{}/manga/{}')
|
||||
|
||||
def get_manga_name(self) -> str:
|
||||
return self._get_name('/manga/([^/]+)')
|
||||
|
||||
def get_chapters(self):
|
||||
idx = self.re.search(r'/manga/.+?/(\d+)', self.get_url()).group(1)
|
||||
chapters = []
|
||||
for i in range(1, 1000):
|
||||
content = self.http_get('{}/series/chapters_list.json?page={}&id_serie={}'.format(
|
||||
self.domain, i, idx
|
||||
), {'x-requested-with': 'XMLHttpRequest'})
|
||||
data = self.json.loads(content)
|
||||
if data['chapters'] is False:
|
||||
break
|
||||
chapters += self.__prepare_chapters(data['chapters'])
|
||||
return chapters
|
||||
|
||||
@staticmethod
|
||||
def __prepare_chapters(items):
|
||||
chapters = []
|
||||
for i in items:
|
||||
for k, j in i['releases'].items():
|
||||
chapter = i.copy()
|
||||
chapter['release'] = j
|
||||
chapter['release_id'] = k
|
||||
chapters.append(chapter)
|
||||
return chapters
|
||||
|
||||
def get_files(self):
|
||||
url = self.chapter_for_json()
|
||||
content = self.http_get('{}{}'.format(self.domain, url))
|
||||
api_key = self.re.search(r'this\.page\.identifier\s*=\s*[\'"](.+)[\'"]', content).group(1)
|
||||
url = '{}/leitor/pages/{}.json?key={}'.format(
|
||||
self.domain, self.chapter['release']['id_release'], api_key
|
||||
)
|
||||
images = self.json.loads(self.http_get(url, {'x-requested-with': 'XMLHttpRequest'}))
|
||||
return images['images']
|
||||
|
||||
def get_cover(self) -> str:
|
||||
return self._cover_from_content('.cover img.cover')
|
||||
|
||||
def book_meta(self) -> dict:
|
||||
pass
|
||||
|
||||
def chapter_for_json(self) -> str:
|
||||
return self.chapter['release']['link']
|
||||
|
||||
|
||||
main = SevenSamaCom
|
||||
Reference in New Issue
Block a user