diff --git a/config.ini b/config.ini index f33a578..06eda0c 100755 --- a/config.ini +++ b/config.ini @@ -18,6 +18,7 @@ nfo_skip_days=30 stop_counter=0 ; 以上两个参数配合使用可以以多次少量的方式刮削或整理数千个文件而不触发翻译或元数据站封禁 ignore_failed_list=0 +download_only_missing_images=1 [proxy] ;proxytype: http or socks5 or socks5h switch: 0 1 diff --git a/config.py b/config.py index 2b49ca0..3b325d9 100644 --- a/config.py +++ b/config.py @@ -141,6 +141,8 @@ class Config: return 0 def ignore_failed_list(self) -> bool: return self.getboolean_override("common", "ignore_failed_list") + def download_only_missing_images(self) -> bool: + return self.conf.getboolean("common", "download_only_missing_images") def is_transalte(self) -> bool: return self.conf.getboolean("transalte", "switch") def is_trailer(self) -> bool: @@ -264,6 +266,7 @@ class Config: conf.set(sec1, "nfo_skip_days", 30) conf.set(sec1, "stop_counter", 0) conf.set(sec1, "ignore_failed_list", 0) + conf.set(sec1, "download_only_missing_images", 1) sec2 = "proxy" conf.add_section(sec2) diff --git a/core.py b/core.py index 94a8503..6a8af37 100755 --- a/core.py +++ b/core.py @@ -183,11 +183,15 @@ def trailer_download(trailer, leak_word, c_word, number, path, filepath): # 剧照下载成功,否则移动到failed def extrafanart_download(data, path, filepath): j = 1 - path = os.path.join(path, config.getInstance().get_extrafanart()) - configProxy = config.getInstance().proxy() + conf = config.getInstance() + path = os.path.join(path, conf.get_extrafanart()) + configProxy = conf.proxy() + download_only_missing_images = conf.download_only_missing_images() for url in data: jpg_filename = f'extrafanart-{j}.jpg' jpg_fullpath = os.path.join(path, jpg_filename) + if download_only_missing_images and os.path.isfile(jpg_fullpath) and os.path.getsize(jpg_fullpath): + continue if download_file_with_filename(url, jpg_filename, path, filepath) == 'failed': moveFailedFolder(filepath) return @@ -209,6 +213,8 @@ def extrafanart_download(data, path, filepath): def image_download(cover, number, leak_word, c_word, path, filepath): filename = f"{number}{leak_word}{c_word}-fanart.jpg" full_filepath = os.path.join(path, filename) + if config.getInstance().download_only_missing_images() and os.path.isfile(full_filepath) and os.path.getsize(full_filepath): + return if download_file_with_filename(cover, filename, path, filepath) == 'failed': moveFailedFolder(filepath) return