Fixed #7. Added thumbs generation using /generate?force=
This commit is contained in:
parent
b7aa41025a
commit
6cea6852ea
42
main.py
42
main.py
@ -44,6 +44,48 @@ def startpage():
|
|||||||
def healthz():
|
def healthz():
|
||||||
return "ok"
|
return "ok"
|
||||||
|
|
||||||
|
@app.route("/generate")
|
||||||
|
def generate():
|
||||||
|
force = request.args.get('force')
|
||||||
|
generated = 0
|
||||||
|
comiccount = 0
|
||||||
|
files_without_comicinfo = 0
|
||||||
|
errorcount = 0
|
||||||
|
skippedcount = 0
|
||||||
|
for root, dirs, files in os.walk(os.path.abspath(config.CONTENT_BASE_DIR)):
|
||||||
|
for file in files:
|
||||||
|
f = os.path.join(root, file)
|
||||||
|
#try:
|
||||||
|
if f.endswith('.cbz'):
|
||||||
|
try:
|
||||||
|
comiccount = comiccount + 1
|
||||||
|
s = zipfile.ZipFile(f)
|
||||||
|
filelist = zipfile.ZipFile.namelist(s)
|
||||||
|
if filelist[0] == 'ComicInfo.xml':
|
||||||
|
Bs_data = BeautifulSoup(s.open('ComicInfo.xml').read(), "xml")
|
||||||
|
CVDB=extras.get_cvdb(Bs_data.select('Notes'))
|
||||||
|
if force == 'True':
|
||||||
|
cover = s.open(filelist[1]).read()
|
||||||
|
c = open(config.THUMBNAIL_DIR + "/" + str(CVDB) + ".jpg", 'wb+')
|
||||||
|
c.write(cover)
|
||||||
|
c.close()
|
||||||
|
generated = generated + 1
|
||||||
|
elif Path(config.THUMBNAIL_DIR + "/" + str(CVDB) + ".jpg").exists() == False:
|
||||||
|
cover = s.open(filelist[1]).read()
|
||||||
|
c = open(config.THUMBNAIL_DIR + "/" + str(CVDB) + ".jpg", 'wb+')
|
||||||
|
c.write(cover)
|
||||||
|
c.close()
|
||||||
|
generated = generated + 1
|
||||||
|
else:
|
||||||
|
skippedcount = skippedcount + 1
|
||||||
|
else:
|
||||||
|
files_withtout_comicinfo = files_without_comicinfo + 1
|
||||||
|
except Exception as e:
|
||||||
|
errorcount = errorcount + 1
|
||||||
|
config._print("Error (/generate): " + e)
|
||||||
|
return "Forced generation: " + str(force) + "<br>Comics: " + str(comiccount) + "<br>Generated: " + str(generated) + "<br>CBZ files without ComicInfo.xml: " + str(files_without_comicinfo) + "<br>Errors: " + str(errorcount) + "<br>Skipped: " + str(skippedcount)
|
||||||
|
|
||||||
|
|
||||||
@app.route('/import')
|
@app.route('/import')
|
||||||
def import2sql():
|
def import2sql():
|
||||||
conn = sqlite3.connect('app.db')
|
conn = sqlite3.connect('app.db')
|
||||||
|
Loading…
Reference in New Issue
Block a user