40 lines
1.6 KiB
Python
40 lines
1.6 KiB
Python
import os,json
|
|
from Comics.settings import CBZ_EXPORT_PATH,OUTPUT_DIR,PROJECT_KEY
|
|
from Comics.utils.Constant import ComicPath
|
|
from Comics.exporters import ComicInfoXmlItemExporter,JsonExport,ItemExporter, ItemImport
|
|
from Comics.utils.FileUtils import fileUtils as fu
|
|
from Comics.loader import ComicEntity
|
|
|
|
class checkUtils:
|
|
|
|
def read(self, item):
|
|
file = os.path.join(OUTPUT_DIR, item[PROJECT_KEY][0], "error_comics.json")
|
|
return ItemImport().import_obj(file)
|
|
#
|
|
# 检测某一章节是否连续错误
|
|
def export_error(self, item):
|
|
if not self.is_error(item):
|
|
file = os.path.join(OUTPUT_DIR, item[PROJECT_KEY][0], "error_comics.json")
|
|
try:
|
|
error_comic = eval(self.read(item))
|
|
except:
|
|
error_comic = []
|
|
error_comic.append({ "name" : ComicPath.new_file_name(item['name']),
|
|
"chapter" : ComicPath.new_file_name(item['chapter']),
|
|
"date" : ComicPath().getYearMonthDay()})
|
|
fu.save_file(file, json.dumps(error_comic))
|
|
|
|
def is_error(self, item):
|
|
try:
|
|
for error_c in eval(self.read(item)):
|
|
(name, chatper, date) = [error_c['name'], error_c['chapter'], error_c['date']]
|
|
if ComicPath.new_file_name(item['name']) == ComicPath.new_file_name(name) and ComicPath.new_file_name(item['chapter']) == ComicPath.new_file_name(chatper):
|
|
return True
|
|
else:
|
|
return False
|
|
except:
|
|
return False
|
|
|
|
|
|
|
|
|