def test_mangakakalot_manga(self): markup = Path(path.join(RESOURCE_PATH, "manga_item.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.MANGAKAKALOT) scraper.markup = markup print(scraper.manga)
def search(self, keyword, source): cancel_search = True self.search_list.data = [] scraper = MangaScraper(source) mangas = scraper.search_online(keyword) Clock.schedule_once(partial(self.update_search_list, mangas, source), 1)
def test_mangakakalot_popular(self): markup = Path(path.join(RESOURCE_PATH, "manga_home.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.MANGAKAKALOT) scraper.markup = markup mangas = scraper.popular print(len(mangas))
def test_online_search(self): scraper = MangaScraper(Source.MANGANELO) mangas = scraper.search_online("i am") manga = mangas[0] assert len(mangas) == 20 assert manga.title == "Tales Of Demons And Gods" assert manga.url == "https://manganelo.com/manga/hyer5231574354229" assert manga.image_url == "https://avt.mkklcdnv3.com/avatar_225/464-tales_of_demons_and_gods.jpg"
def test_leviatanscans_latest(self): markup = Path( path.join(RESOURCE_PATH, "leviatanscans_home.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.LEVIATANSCANS) scraper.markup = markup mangas = scraper.latest for manga in mangas: print(manga)
def test_leviatanscans_manga(self): markup = Path( path.join(RESOURCE_PATH, "leviatanscans_item.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.LEVIATANSCANS) scraper.markup = markup manga = scraper.manga for chapter in manga.chapters: print(chapter)
def test_getting_latest_mangas(self): markup = Path( resource("manganelo_home.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.MANGANELO) scraper.markup = markup mangas = scraper.latest manga = mangas[0] assert len(mangas) == 56 assert manga.url == "https://manganelo.com/manga/gr921840" assert manga.title == "Eromanga-Sensei: Yamada Elf-Daisensei No Koi Suru Junshin Gohan" assert manga.image_url == "https://www.upsieutoc.com/images/2020/01/15/186d0005283f8449e.jpg"
def get_manga(self, url, source, *_): print(f"Opening -> {url} from {source}") self._clean_info() resp = requests.get(url) if not resp.ok: return None scraper = MangaScraper(source) scraper.markup = resp.text manga = scraper.manga resp = requests.get(manga.image_url) image_byte = resp.content if resp.ok else None Clock.schedule_once( partial(self._update_info, manga, image_byte, scraper), 0)
def test_getting_popular_mangas(self): markup = Path( resource("manganelo_home.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.MANGANELO) scraper.markup = markup mangas = scraper.popular manga = mangas[0] print(manga.url) print(manga.title) print(manga.image_url) assert len(mangas) == 25 assert manga.url == "https://manganelo.com/manga/hyer5231574354229" assert manga.title == "Tales Of Demons And Gods" assert manga.image_url == "https://avt.mkklcdnv3.com/avatar_225/464-tales_of_demons_and_gods.jpg"
def test_getting_information_from_manga_item(self): markup = Path( resource("manganelo_item.html")).read_text(encoding="utf-8") scraper = MangaScraper(Source.MANGANELO) scraper.markup = markup manga = scraper.manga assert manga.size == 435 assert manga.title == "Tales Of Demons And Gods" assert manga.image_url == "https://avt.mkklcdnv3.com/avatar_225/464-tales_of_demons_and_gods.jpg" chapter_275_5 = manga.chapters[0] assert chapter_275_5.title == "Chapter 275.5" assert chapter_275_5.uid == "275.5" assert chapter_275_5.url == "https://manganelo.com/chapter/hyer5231574354229/chapter_275.5" chapter_257 = manga.chapters[1] assert chapter_257.title == "Chapter 257" assert chapter_257.uid == "257" assert chapter_257.url == "https://manganelo.com/chapter/hyer5231574354229/chapter_257"
def test_mangakakalot_search_online(self): scraper = MangaScraper(Source.MANGAKAKALOT) mangas = scraper.search_online("rebirth of") for manga in mangas: print(manga)
def test_leviatanscans_search_online(self): scraper = MangaScraper(Source.LEVIATANSCANS) mangas = scraper.search_online("survival") for manga in mangas: print(manga)