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 \n Entrez 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 )