Loading manga_dl/entities/Chapter.py +21 −4 Changes for manga_dl/entities/Chapter.py: 21 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ import cfscrape from puffotter.os import makedirs from typing import Callable, List from typing import Optional from subprocess import Popen from subprocess import Popen, DEVNULL from urllib.request import urlretrieve Loading @@ -41,7 +41,8 @@ class Chapter: chapter_number: str, destination_dir: str, _format: str, page_load_callback: Callable[['Chapter', str], List[str]] page_load_callback: Callable[['Chapter', str], List[str]], title: Optional[str] = None ): """ Initializes the manga chapter Loading @@ -53,6 +54,7 @@ class Chapter: downloaded files by default :param _format: The format in which to store the chapter when downloading by default :param title: The title of the chapter :param page_load_callback: """ self.logger = logging.getLogger(self.__class__.__name__) Loading @@ -64,13 +66,20 @@ class Chapter: self.format = _format self._page_load_callback = page_load_callback self._pages = [] # type: List[str] self.title = title if self.chapter_number == "": self.chapter_number = "0" @property def name(self) -> str: """ :return: The name of the chapter """ return "{} - Chapter {}".format(self.series_name, self.chapter_number) name = "{} - Chapter {}".format(self.series_name, self.chapter_number) if self.title is not None: name += " - " + self.title return name @property def pages(self) -> List[str]: Loading Loading @@ -133,7 +142,9 @@ class Chapter: downloaded.append(image_file) if _format in ["cbz", "zip"]: Popen(["zip", "-j", dest_path] + downloaded).wait() self.logger.debug("Zipping Files") Popen(["zip", "-j", dest_path] + downloaded, stdout=DEVNULL, stderr=DEVNULL).wait() shutil.rmtree(tempdir) elif _format == "dir": os.rename(tempdir, dest_path) Loading @@ -141,3 +152,9 @@ class Chapter: self.logger.warning("Invalid format {}".format(_format)) return dest_path def __str__(self) -> str: """ :return: The string representation of the object """ return self.name manga_dl/scrapers/Scraper.py +2 −2 Changes for manga_dl/scrapers/Scraper.py: 2 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -29,15 +29,15 @@ class Scraper: def __init__( self, destination: str, _format: str = "cbz", destination: Optional[str] = None, languages: Optional[Set[str]] = None ): """ Initializes the Scraper object :param _format: The format in which to store chapters :param destination: The destination directory in which to store chapters :param _format: The format in which to store chapters :param languages: Set of languages for which to check """ self.logger = logging.getLogger(self.__class__.__name__) Loading manga_dl/scrapers/mangadex.py +9 −3 Changes for manga_dl/scrapers/mangadex.py: 9 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -75,7 +75,12 @@ class MangaDexScraper(Scraper): series_info = json.loads(resp.text) series_title = series_info["manga"]["title"] chapter_list = series_info["chapter"] chapter_list = series_info.get("chapter", {}) if self.destination is None: destination = series_title else: destination = self.destination chapters = [] Loading @@ -86,9 +91,10 @@ class MangaDexScraper(Scraper): chapter["lang_code"], series_title, chapter["chapter"], self.destination, destination, self.format, self.get_image_pages self.get_image_pages, chapter["title"], )) return chapters Loading version +1 −1 Changes for version: 1 added line, 1 removed line. Original line number Diff line number Diff line 0.1.6 No newline at end of file 0.2.0 No newline at end of file Loading
manga_dl/entities/Chapter.py +21 −4 Changes for manga_dl/entities/Chapter.py: 21 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ import cfscrape from puffotter.os import makedirs from typing import Callable, List from typing import Optional from subprocess import Popen from subprocess import Popen, DEVNULL from urllib.request import urlretrieve Loading @@ -41,7 +41,8 @@ class Chapter: chapter_number: str, destination_dir: str, _format: str, page_load_callback: Callable[['Chapter', str], List[str]] page_load_callback: Callable[['Chapter', str], List[str]], title: Optional[str] = None ): """ Initializes the manga chapter Loading @@ -53,6 +54,7 @@ class Chapter: downloaded files by default :param _format: The format in which to store the chapter when downloading by default :param title: The title of the chapter :param page_load_callback: """ self.logger = logging.getLogger(self.__class__.__name__) Loading @@ -64,13 +66,20 @@ class Chapter: self.format = _format self._page_load_callback = page_load_callback self._pages = [] # type: List[str] self.title = title if self.chapter_number == "": self.chapter_number = "0" @property def name(self) -> str: """ :return: The name of the chapter """ return "{} - Chapter {}".format(self.series_name, self.chapter_number) name = "{} - Chapter {}".format(self.series_name, self.chapter_number) if self.title is not None: name += " - " + self.title return name @property def pages(self) -> List[str]: Loading Loading @@ -133,7 +142,9 @@ class Chapter: downloaded.append(image_file) if _format in ["cbz", "zip"]: Popen(["zip", "-j", dest_path] + downloaded).wait() self.logger.debug("Zipping Files") Popen(["zip", "-j", dest_path] + downloaded, stdout=DEVNULL, stderr=DEVNULL).wait() shutil.rmtree(tempdir) elif _format == "dir": os.rename(tempdir, dest_path) Loading @@ -141,3 +152,9 @@ class Chapter: self.logger.warning("Invalid format {}".format(_format)) return dest_path def __str__(self) -> str: """ :return: The string representation of the object """ return self.name
manga_dl/scrapers/Scraper.py +2 −2 Changes for manga_dl/scrapers/Scraper.py: 2 added lines, 2 removed lines. Original line number Diff line number Diff line Loading @@ -29,15 +29,15 @@ class Scraper: def __init__( self, destination: str, _format: str = "cbz", destination: Optional[str] = None, languages: Optional[Set[str]] = None ): """ Initializes the Scraper object :param _format: The format in which to store chapters :param destination: The destination directory in which to store chapters :param _format: The format in which to store chapters :param languages: Set of languages for which to check """ self.logger = logging.getLogger(self.__class__.__name__) Loading
manga_dl/scrapers/mangadex.py +9 −3 Changes for manga_dl/scrapers/mangadex.py: 9 added lines, 3 removed lines. Original line number Diff line number Diff line Loading @@ -75,7 +75,12 @@ class MangaDexScraper(Scraper): series_info = json.loads(resp.text) series_title = series_info["manga"]["title"] chapter_list = series_info["chapter"] chapter_list = series_info.get("chapter", {}) if self.destination is None: destination = series_title else: destination = self.destination chapters = [] Loading @@ -86,9 +91,10 @@ class MangaDexScraper(Scraper): chapter["lang_code"], series_title, chapter["chapter"], self.destination, destination, self.format, self.get_image_pages self.get_image_pages, chapter["title"], )) return chapters Loading
version +1 −1 Changes for version: 1 added line, 1 removed line. Original line number Diff line number Diff line 0.1.6 No newline at end of file 0.2.0 No newline at end of file