update for error resistance

This commit is contained in:
Yannik Schmidt
2021-09-13 19:08:59 +02:00
parent 468034c801
commit 792806838e
3 changed files with 26 additions and 5 deletions

View File

@@ -7,6 +7,7 @@ import os.path
BLOCK_TUP_TEXT = 4 BLOCK_TUP_TEXT = 4
def load(filename): def load(filename):
print(filename)
doc = fitz.open(filename) doc = fitz.open(filename)
FIRST_P = True FIRST_P = True
@@ -32,6 +33,7 @@ def load(filename):
if "Bauort:" in text: if "Bauort:" in text:
location += text.split("Bauort:")[1] location += text.split("Bauort:")[1]
kwErrorInfo = None
if "Thermoscan" in text: if "Thermoscan" in text:
kwParts = text.split("\n") kwParts = text.split("\n")
kw = "" kw = ""
@@ -42,7 +44,10 @@ def load(filename):
if not pClean: if not pClean:
continue continue
elif not kw: elif not kw:
kw = int(pClean.split(". KW")[0]) try:
kw = int(pClean.split(". KW")[0])
except ValueError:
kwErrorInfo = "Kalenderwochen Info nicht gefunden."
elif not title: elif not title:
title = pClean title = pClean
elif not contractor: elif not contractor:
@@ -50,10 +55,14 @@ def load(filename):
ISO_CAL_KW_LOC = 1 ISO_CAL_KW_LOC = 1
kwStartDate = startDateParsed.isocalendar()[ISO_CAL_KW_LOC] kwStartDate = startDateParsed.isocalendar()[ISO_CAL_KW_LOC]
if kw < kwStartDate:
blowerdoorDate = "{} KW-{:02d}".format(startDateParsed.year +1, kw) if kwErrorInfo:
blowerdoorDate = None
else: else:
blowerdoorDate = "{} KW-{}".format(startDateParsed.year, kw) if kw < kwStartDate:
blowerdoorDate = "{} KW-{:02d}".format(startDateParsed.year +1, kw)
else:
blowerdoorDate = "{} KW-{}".format(startDateParsed.year, kw)

View File

@@ -2,6 +2,9 @@ import flask
import argparse import argparse
import glob import glob
import os import os
from data import BlowerdoorData
import datetime
import os.path
import eg_geiss_bauherren as parserBackend import eg_geiss_bauherren as parserBackend
@@ -10,8 +13,13 @@ app = flask.Flask("THS-Raven")
@app.route("/") @app.route("/")
def root(): def root():
allFiles = [] allFiles = []
loaded = None
for filename in glob.glob("static/files/*.pdf"): for filename in glob.glob("static/files/*.pdf"):
allFiles.append(parserBackend.load(filename)) try:
loaded = parserBackend.load(filename)
except Exception:
loaded = BlowerdoorData(os.path.basename(filename), os.path.basename(filename), "", "", datetime.datetime.now(), datetime.datetime.now())
allFiles.append(loaded)
return flask.render_template("index.html", listContent=allFiles) return flask.render_template("index.html", listContent=allFiles)

View File

@@ -23,7 +23,11 @@
<tr> <tr>
<td style="line-height: 45px;"><a target="_blank" href="/get-file?basename={{ bd.docName }}">{{ bd.docName }}</a></td> <td style="line-height: 45px;"><a target="_blank" href="/get-file?basename={{ bd.docName }}">{{ bd.docName }}</a></td>
<td style="line-height: 45px;">{{ bd.location }}</td> <td style="line-height: 45px;">{{ bd.location }}</td>
{% if bd.blowerdoorDate %}
<td style="line-height: 45px;">{{ bd.blowerdoorDate }}</td> <td style="line-height: 45px;">{{ bd.blowerdoorDate }}</td>
{% else %}
<td style="line-height: 45px;">0000 - Keine Informationen Gefunden</td>
{% endif %}
<td style="line-height: 45px;">{{ bd.customer }}</td> <td style="line-height: 45px;">{{ bd.customer }}</td>
<td style="line-height: 45px;">{{ bd.pdfDate.strftime("%Y/%m/%d") }}</td> <td style="line-height: 45px;">{{ bd.pdfDate.strftime("%Y/%m/%d") }}</td>
</tr> </tr>