1
0
mirror of https://gitlab.os-k.eu/neox/CNIRevelator.git synced 2023-08-25 14:03:10 +02:00
CNIRevelator/CNI_Revelator.py

107 lines
3.6 KiB
Python
Raw Normal View History

2018-08-29 17:04:00 +02:00
"""
********************************************************************************
*** Projet CNI_Revelator ***
GNU GPL * 07/2018
Adrien Bourmault
main
********************************************************************************
"""
2019-06-30 17:54:41 +02:00
from CNI_GLOBALVAR import *
2018-08-29 17:04:00 +02:00
try:
2019-06-30 17:54:41 +02:00
os.remove('error.log')
os.remove('conf.ig')
2018-08-29 17:04:00 +02:00
except:
2019-06-30 17:54:41 +02:00
print("pass log deletion")
2018-08-29 17:04:00 +02:00
pass
2019-06-30 17:54:41 +02:00
if not os.path.exists(CST_FOLDER):
try:
os.makedirs(CST_FOLDER)
except IOError:
print("pass IO ERROR")
pass
2019-06-30 18:46:42 +02:00
print("debug")
import logging
from logging import FileHandler
logger = logging.getLogger()
logger.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s :: %(levelname)s :: %(message)s')
error_handler = FileHandler((CST_FOLDER + '\\error.log'), mode='w', encoding='utf-8', delay=True)
info_handler = FileHandler((CST_FOLDER + '\\cnirevelator.log'), mode='w', encoding='utf-8')
error_handler.setLevel(logging.ERROR)
logger.addHandler(error_handler)
info_handler.setLevel(logging.DEBUG)
info_handler.setFormatter(formatter)
logger.addHandler(info_handler)
from CNI_classes import *
from CNI_Update import *
2019-06-30 17:54:41 +02:00
2019-06-30 18:46:42 +02:00
def main(logger):
logger.error('')
logger.info('main() : **** Creating App_main() ****')
main_w = App_main(logger)
main_w.montext('* ' + CST_NAME + ' ' + CST_VER + ' ' + CST_TYPE + ' Revision ' + CST_REV + ' *\n')
import CNI_pytesseract as pytesseract
2018-08-29 17:04:00 +02:00
try:
2019-06-30 18:46:42 +02:00
os.environ['PATH'] = CST_FOLDER + 'Tesseract-OCR4\\'
os.environ['TESSDATA_PREFIX'] = CST_FOLDER + 'Tesseract-OCR4\\tessdata'
tesser_version = pytesseract.get_tesseract_version()
2018-08-29 17:04:00 +02:00
except Exception as e:
2019-06-30 18:46:42 +02:00
logger.error('main() : **** ERROR WITH TESSERACT MODULE ' + str(e) + ' ****')
else:
text = 'Tesseract version ' + str(tesser_version) + ' Licensed Apache 2004 successfully initiated\n'
main_w.montext(text)
main_w.montext('\n\nEntrez la première ligne de MRZ svp \n')
if CST_CHANGELOG.isOn:
showinfo('Changelog : résumé de mise à jour', ('Version du logiciel : ' + CST_VER + ' ' + CST_TYPE + ' Revision ' + CST_REV + '\n\n' + CST_CHANGELOG.text), parent=main_w)
logger.info('main() : **** Launching App_main() ****')
main_w.mainloop()
logger.info('main() : **** Ending App_main() ****')
2018-08-29 17:04:00 +02:00
2019-06-30 18:46:42 +02:00
logger.info('launcher : ' + CST_NAME + ' ' + CST_VER)
logger.info('launcher : *****Hello World*****')
logger.info('launcher : *****Launching SoftUpdate()*****')
try:
Answer = SoftUpdate(logger)
except Exception as e:
logger.info('launcher : *****FATAL ERROR*****' + str(e))
os.abort()
2018-08-29 17:04:00 +02:00
2019-06-30 18:46:42 +02:00
logger.info('launcher : *****Ending SoftUpdate()*****')
try:
if Answer == True:
logger.info('launcher : *****Launching main()*****')
State = main(logger)
except Exception as e:
logger.info('launcher : *****FATAL ERROR*****' + str(e))
os.abort()
2019-06-30 17:54:41 +02:00
2019-06-30 18:46:42 +02:00
logger.info('launcher : *****Ending main()*****')
logger.info('launcher : *****Goodbye!*****')
handlers = logger.handlers[:]
for handler in handlers:
handler.close()
logger.removeHandler(handler)
try:
with open(CST_FOLDER + '\\error.log') as (echo):
try:
os.remove('error.log')
except OSError:
pass
from shutil import copyfile
temptwo = str(echo.read())
if len(temptwo) != 1:
copyfile(CST_FOLDER + '\\cnirevelator.log', 'error.log')
except IOError:
pass
2019-06-30 17:54:41 +02:00
2019-06-30 18:46:42 +02:00
print("exit")
2019-07-01 21:45:07 +02:00
sys.exit(0)