5 Commits

Author SHA1 Message Date
9ce052e04d Updating converter to pick up files copied in by nextcloud 2022-09-23 15:06:20 +10:00
ed85763ff5 Added some debugging 2022-09-23 11:59:57 +10:00
1205dddc9e Fixing bug
All checks were successful
continuous-integration/drone Build is passing
2022-02-11 11:14:00 +10:00
56d4354b53 Added extra sleep time to wait for download 2022-02-07 12:48:28 +10:00
f16b3ae078 Updating base image to a more secure one 2022-02-04 14:59:33 +10:00
2 changed files with 29 additions and 19 deletions

View File

@@ -1,4 +1,4 @@
FROM python:3.8 FROM python:3.8-slim
RUN pip install ofxparse RUN pip install ofxparse
RUN pip install watchdog RUN pip install watchdog

View File

@@ -134,9 +134,10 @@ class Handler(watchdog.events.PatternMatchingEventHandler):
fileExists = False fileExists = False
timeout = 0 timeout = 0
while not fileExists: while not fileExists:
fileExists = os.path.isfile(event.src_path) fileExists = os.path.isfile(event.src_path)
time.sleep(1) time.sleep(5)
timeout += 1 timeout += 1
if timeout > 60: if timeout > 60:
@@ -152,6 +153,7 @@ class Handler(watchdog.events.PatternMatchingEventHandler):
logging.info("file copy has now finished") logging.info("file copy has now finished")
with open(event.src_path, 'r') as file: with open(event.src_path, 'r') as file:
try:
qfx = OfxParser.parse(file, fail_fast=False) qfx = OfxParser.parse(file, fail_fast=False)
statement, acct_name = Handler.get_statement_from_qfx(qfx) statement, acct_name = Handler.get_statement_from_qfx(qfx)
@@ -175,9 +177,17 @@ class Handler(watchdog.events.PatternMatchingEventHandler):
if not destination.exists(): if not destination.exists():
path.replace(destination) path.replace(destination)
except:
logging.info("Failed to process {}".format(event.src_path))
logging.info("Processing successfully finished for {}".format(event.src_path)) logging.info("Processing successfully finished for {}".format(event.src_path))
def on_modified(self, event):
logging.info('Found modified file: {}'.format(event.src_path))
self.on_created(event)
if __name__ == "__main__": if __name__ == "__main__":
event_handler = Handler() event_handler = Handler()
observer = watchdog.observers.Observer() observer = watchdog.observers.Observer()