From 96684996bcde5a9256d5334a29da9d307223c65a Mon Sep 17 00:00:00 2001 From: Emanuele Date: Thu, 9 Apr 2020 14:23:08 +0200 Subject: [PATCH] tr anche sui fle di libreria --- bananaSPLIT/libbananasplit/libconfload.py | 28 +++---- bananaSPLIT/libbananasplit/libsplit.py | 92 +++++++++++------------ 2 files changed, 60 insertions(+), 60 deletions(-) diff --git a/bananaSPLIT/libbananasplit/libconfload.py b/bananaSPLIT/libbananasplit/libconfload.py index 29eca65..a6e36b6 100644 --- a/bananaSPLIT/libbananasplit/libconfload.py +++ b/bananaSPLIT/libbananasplit/libconfload.py @@ -18,13 +18,13 @@ class bananaCONF(object): if workdir is not None: self.workdir = workdir os.chdir(workdir) - self.log.debug("Cerco le configurazioni in: [{}]".format(os.getcwd())) + self.log.debug(tr("Cerco le configurazioni in: [{}]").format(os.getcwd())) else: - self.log.error("Non mi e' stata fornita una directory per i file di configurazione") + self.log.error(tr("Non mi e' stata fornita una directory per i file di configurazione")) pass def open(self): - self.log.info("Carico i file di configurazione") + self.log.info(tr("Carico i file di configurazione")) self.fileList = glob.glob(r"*.json") if len(self.fileList) > 0: for f in self.fileList: @@ -33,17 +33,17 @@ class bananaCONF(object): tf = json.load(fp) fName = f.split("\\")[-1] self.settingsList[fName] = copy.deepcopy(tf) - self.log.info("Caricato correttamente: {}".format(fName)) + self.log.info(tr("Caricato correttamente: {}").format(fName)) fp.close() except json.JSONDecodeError as e: - self.log.error("Impossibile leggere la configurazione:{}\n \ - Controlla il file a riga: {} e colonna:{}" .format(e.doc, e.lineno, e.colno)) + self.log.error(tr("Impossibile leggere la configurazione:{}\n \ + Controlla il file a riga: {} e colonna:{}").format(e.doc, e.lineno, e.colno)) except IOError as ee: - self.log.error("Impossibile aprire il file: {}".format(ee)) + self.log.error(tr("Impossibile aprire il file: {}").format(ee)) except Exception as eee: - self.log.critical("Eccezione inaspettata: {}".format(eee)) + self.log.critical(tr("Eccezione inaspettata: {}").format(eee)) else: - self.log.error("Non ho trovato alcun file di configurazione!") + self.log.error(tr("Non ho trovato alcun file di configurazione!")) pass def reload(self): @@ -60,15 +60,15 @@ class bananaCONF(object): def save(self, fName=None): if fName is None: fName=self.inUse - self.log.info("Salvo la configurazione: {}".format(fName)) + self.log.info(tr("Salvo la configurazione: {}").format(fName)) try: f=open(fName, 'w') json.dump(self.settingsList[self.inUse], f, indent='\t') f.close() except IOError as e: - self.log.error("Impossibile salvare il file: {} - [{}]".format(fName,e)) + self.log.error(tr("Impossibile salvare il file: {} - [{}]").format(fName,e)) except Exception as ei: - self.log.error("Errore imprevisto nella scrittura del file: {}".format(ei)) + self.log.error(tr("Errore imprevisto nella scrittura del file: {}").format(ei)) pass def getFiles(self): @@ -81,7 +81,7 @@ class bananaCONF(object): rv = rv[k] return rv except ValueError as ve: - self.log.error("Parametro di configurazione non valido! [{}]".format(ve)) + self.log.error(tr("Parametro di configurazione non valido! [{}]").format(ve)) return False pass @@ -93,7 +93,7 @@ class bananaCONF(object): sv[keys[-1]] = val return True except ValueError as ve: - self.log.error("Parametro di configurazione non valido! [{}]".format(ve)) + self.log.error(tr("Parametro di configurazione non valido! [{}]").format(ve)) return False pass diff --git a/bananaSPLIT/libbananasplit/libsplit.py b/bananaSPLIT/libbananasplit/libsplit.py index ef6f7dc..85220d3 100644 --- a/bananaSPLIT/libbananasplit/libsplit.py +++ b/bananaSPLIT/libbananasplit/libsplit.py @@ -24,7 +24,7 @@ class bananaSPLITTER(QObject): self.duplicateNumber=0 #self.log.debug(f"Configurazione: \n {json.dumps(fileParams, indent=2)}") if fileParams is not None: - self.log.debug("Sto operando sul file: {}..".format(self.fileParams['name'])) + self.log.debug(tr("Sto operando sul file: {}..").format(self.fileParams['name'])) self.paths = self.fileParams['paths'] self.docStruct = self.fileParams['docStruct'] self.settings = self.fileParams['settings'] @@ -33,12 +33,12 @@ class bananaSPLITTER(QObject): self.beginTime = time.time() pass else: - self.log.critical("Non e' stato fornito il nome di alcun file da splittare!") + self.log.critical(tr("Non e' stato fornito il nome di alcun file da splittare!")) pass def run(self): - self.log.info("Nuovo SPLITTER su file: {}".format(self.fileName)) - self.sendStatus.emit(f"Inizio {self.fileName}") + self.log.info(tr("Nuovo SPLITTER su file: {}").format(self.fileName)) + self.sendStatus.emit(tr(f"Inizio {self.fileName}")) try: self.openFile() self.remEmptyLines() @@ -48,13 +48,13 @@ class bananaSPLITTER(QObject): self.splitFile() if self.settings['removeDuplicates']: - self.log.info("Controllo se ci sono dei duplicati..") + self.log.info(tr("Controllo se ci sono dei duplicati..")) self.removeDuplicates() else: for idx, ff in enumerate(self.contentList): ff['duplicate']=False self.contentList[idx]=ff - self.log.warn('Salto il controllo dei duplicati..') + self.log.warn(tr("Salto il controllo dei duplicati..")) # se il parse e la rimozione dei duplicati e' andata bene # preparo e inizio il salvataggio if os.path.exists(self.outPath): @@ -63,7 +63,7 @@ class bananaSPLITTER(QObject): for f in os.listdir(self.outPath): os.remove(self.outPath+f) else: - raise FileExistsError("Non posso sovrascrivere i vecchi file, eliminali manualmente!") + raise FileExistsError(tr("Non posso sovrascrivere i vecchi file, eliminali manualmente!")) else: os.mkdir(self.outPath) #os.chdir(self.outPath) @@ -71,10 +71,10 @@ class bananaSPLITTER(QObject): self.saveSeparate() if self.settings['saveBodyFile']: self.saveBody() - self.log.info("L'elaborazione del file ha richiesto {:4.2f} sec".format(time.time()-self.beginTime)) + self.log.info(tr("L'elaborazione del file ha richiesto {:4.2f} sec").format(time.time()-self.beginTime)) except UnicodeDecodeError as ee: - self.log.critical("Il file [{}] contiene caratteri non compatibili con la codifica scelta! [{}]" + self.log.critical(tr("Il file [{}] contiene caratteri non compatibili con la codifica scelta! [{}]") .format(self.fileParams['name'],ee)) except FileExistsError as fe: self.log.critical(fe) @@ -86,12 +86,12 @@ class bananaSPLITTER(QObject): def openFile(self): try: #os.chdir(self.paths["INworkPath"]) - self.log.info("Carico il contenuto..") + self.log.info(tr("Carico il contenuto..")) fp = open(self.paths["INworkPath"]+'/'+self.fileParams['name'], mode='r', encoding=self.settings['encoding']) self.rawFile = fp.readlines() fp.close() except IOError as e: - self.log.critical("Impossibile aprire il file: {}! [{}]".format(self.fileName,e)) + self.log.critical(tr("Impossibile aprire il file: {}! [{}]").format(self.fileName,e)) raise BaseException("OpenFile") os.rmdir(self.outPath) except Exception as ee: @@ -99,7 +99,7 @@ class bananaSPLITTER(QObject): pass def remEmptyLines(self): - self.log.info("Elimino righe vuote e caratteri inutili..") + self.log.info(tr("Elimino righe vuote e caratteri inutili..")) tempContent = [] try: for ll in self.rawFile: @@ -111,12 +111,12 @@ class bananaSPLITTER(QObject): self.rawFile.append('\n') #linea vuota finale per essere sicuri di parsare bene return True except: - self.log.error("Errore inaspettato durante l'eliminazione delle righe vuote!") + self.log.error(tr("Errore inaspettato durante l'eliminazione delle righe vuote!")) raise BaseException("DelLines") del tempContent def newSplitFile(self): #porting del codice dal programma originale - self.log.info("Individuo il contenuto..") + self.log.info(tr("Individuo il contenuto..")) self.bodyCounter=0 self.duplicateNumber=0 docNumber = 0 @@ -142,7 +142,7 @@ class bananaSPLITTER(QObject): docDate['month']=self.docStruct['language']['dateWords'].index(docDate['month'])+1 # dopo la data inizia il titolo, ma prima si cerca il nome del giornale except: - self.log.warn("Ho trovato una riga ambigua.. potrebbe essere una data ma non so: [{}]". format(l.strip('\r\n'))) + self.log.warn(tr("Ho trovato una riga ambigua.. potrebbe essere una data ma non so: [{}]"). format(l.strip('\r\n'))) pass elif lineWords[0].upper() in self.docStruct['language']['headWords']: #cambio stato e inizializzo un nuovo documento da riempire @@ -166,13 +166,13 @@ class bananaSPLITTER(QObject): else: newsPaperName = self.settings['nameNotFoundStr'] except: - self.log.warn("E' successo qualcosa mentre stavo cercando il nome della pubblicazione,\ - controlla i file di uscita! [{}]".format(l.strip())) + self.log.warn(tr("E' successo qualcosa mentre stavo cercando il nome della pubblicazione,\ + controlla i file di uscita! [{}]").format(l.strip())) else: newsPaperName = self.settings['nameNotFoundStr'] newsName = False except IndexError: - self.log.error("Errore inaspettato, contatta il tuo sviluppatore di fiducia!") + self.log.error(tr("Errore inaspettato, contatta il tuo sviluppatore di fiducia!")) pass elif self.status == 'head': tempContent = list() @@ -184,8 +184,8 @@ class bananaSPLITTER(QObject): #self.status = 'body' elif self.status == 'body': if re.match(self.docStruct['endOfDocument'],l) is not None: #controlla se ci sono articoli che non hanno le parole chiave finali - self.log.warn("Ho individuato una separatore valido prima che si chiusesse l'articolo precedente, controlla i tuoi file in uscita!\n\ - L'errore dovrebbe essere intorno all'articolo {} ma non sono sicuro! \n\t\t\t[{}]".format(docNumber, l.strip())) + self.log.warn(tr("Ho individuato una separatore valido prima che si chiusesse l'articolo precedente, controlla i tuoi file in uscita!\n\ + L'errore dovrebbe essere intorno all'articolo {} ma non sono sicuro! \n\t\t\t[{}]").format(docNumber, l.strip())) self.status = 'tail' anomaly = True elif not lineWords[0].upper() in self.docStruct['language']['tailWords']: #se la prima parola non e' tra quelle di fine @@ -211,18 +211,18 @@ class bananaSPLITTER(QObject): self.bodyCounter +=1 pass else: - self.log.critical("Stato Interno Sconosciuto") + self.log.critical(tr("Stato Interno Sconosciuto")) prevLine=l #salva sempre e comunque il contenuto della linea precedente pass #ricerca terminata, espongo i risultati - self.log.info("Nel file ho trovato {0} articoli..".format(self.bodyCounter)) + self.log.info(tr("Nel file ho trovato {0} articoli..").format(self.bodyCounter)) if docSkipped > 0: - self.log.warn("Attentione, LexisNexis ne ha saltati {} !!!".format(docSkipped)) + self.log.warn(tr("Attentione, LexisNexis ne ha saltati {} !!!").format(docSkipped)) pass pass def splitFile(self): #porting del codice dal programma originale - self.log.info("Individuo il contenuto..") + self.log.info(tr("Individuo il contenuto..")) self.bodyCounter=0 self.duplicateNumber=0 docNumber = 0 @@ -246,7 +246,7 @@ class bananaSPLITTER(QObject): pass else: if self.settings["showSkipped"]: - self.log.warn("Il conto dei documenti non torna! LexisNexis ne ha saltato qualcuno!\n Precedente:{0}-Attuale:{1}".format(docNumber,nn["current"])) + self.log.warn(tr("Il conto dei documenti non torna! LexisNexis ne ha saltato qualcuno!\n Precedente:{0}-Attuale:{1}").format(docNumber,nn["current"])) docSkipped+=1 docNumber = nn["current"] except: @@ -267,12 +267,12 @@ class bananaSPLITTER(QObject): else: newsPaperName = self.settings['nameNotFoundStr'] except: - self.log.warn("E' successo qualcosa mentre stavo cercando il nome della pubblicazione,\ - controlla i file di uscita! [{}]".format(prevLine.strip())) + self.log.warn(tr("E' successo qualcosa mentre stavo cercando il nome della pubblicazione,\ + controlla i file di uscita! [{}]").format(prevLine.strip())) else: newsPaperName = self.settings['nameNotFoundStr'] except: - self.log.warn("Ho trovato una riga ambigua.. potrebbe essere una data ma non so: [{}]". format(l.strip('\r\n'))) + self.log.warn(tr("Ho trovato una riga ambigua.. potrebbe essere una data ma non so: [{}]").format(l.strip('\r\n'))) pass elif lineWords[0] in self.docStruct['language']['headWords']: #cambio stato e inizializzo un nuovo documento da riempire @@ -286,7 +286,7 @@ class bananaSPLITTER(QObject): if titleBegin: title += l.strip().capitalize() except IndexError: - self.log.error("Errore inaspettato, contatta il tuo sviluppatore di fiducia!") + self.log.error(tr("Errore inaspettato, contatta il tuo sviluppatore di fiducia!")) pass elif self.status == 'head': tempContent = list() @@ -304,8 +304,8 @@ class bananaSPLITTER(QObject): self.status = 'tail' anomaly = False if docSep.match(l) is not None: #controlla se ci sono articoli che non hanno le parole chiave finali - self.log.warn("Ho individuato una separatore valido prima che si chiusesse l'articolo precedente, controlla i tuoi file in uscita!\n\ - L'errore dovrebbe essere intorno all'articolo {} ma non sono sicuro! \n\t\t[{}]".format(docNumber, l.strip())) + self.log.warn(tr("Ho individuato una separatore valido prima che si chiusesse l'articolo precedente, controlla i tuoi file in uscita!\n\ + L'errore dovrebbe essere intorno all'articolo {} ma non sono sicuro! \n\t\t[{}]").format(docNumber, l.strip())) self.status = 'tail' anomaly = True pass @@ -321,13 +321,13 @@ class bananaSPLITTER(QObject): self.bodyCounter +=1 pass else: - self.log.critical("Stato Interno Sconosciuto") + self.log.critical(tr("Stato Interno Sconosciuto")) prevLine=l #salva sempre e comunque il contenuto della linea precedente pass #ricerca terminata, espongo i risultati - self.log.info("Nel file ho trovato {0} articoli..".format(self.bodyCounter)) + self.log.info(tr("Nel file ho trovato {0} articoli..").format(self.bodyCounter)) if docSkipped > 0: - self.log.warn("Attentione, LexisNexis ne ha saltati {} !!!".format(docSkipped)) + self.log.warn(tr("Attentione, LexisNexis ne ha saltati {} !!!").format(docSkipped)) pass pass @@ -344,18 +344,18 @@ class bananaSPLITTER(QObject): if ff['title'] not in duplicateList: duplicateList.append(ff['title']) if self.settings['showRemovedDuplicates']: - self.log.info("Duplicato: {}".format(ff['title'].strip())) + self.log.info(tr("Duplicato: {}").format(ff['title'].strip())) ff['duplicate'] = True self.contentList[idx]=ff self.duplicateNumber+=1 - self.log.info("Ho rimosso {} duplicati di {} articoli..". format(self.duplicateNumber, len(duplicateList))) + self.log.info(tr("Ho rimosso {} duplicati di {} articoli..").format(self.duplicateNumber, len(duplicateList))) pass def saveSeparate(self): outFileCounter = 0 self.paths['OUTworkPath']=self.paths['OUTworkPath']+slugify(self.fileName) - self.log.info("Salvo gli articoli in file separati...") - self.log.debug("Persorso: {0}".format(self.outPath)) + self.log.info(tr("Salvo gli articoli in file separati...")) + self.log.debug(tr("Persorso: {0}").format(self.outPath)) for ff in self.contentList: try: if ff['duplicate'] == False: @@ -371,20 +371,20 @@ class bananaSPLITTER(QObject): out.close() outFileCounter+=1 except IOError as e: - self.log.error("Qualcosa e\' andato storto, non riesco a scrivere il file: {}".format(e)) + self.log.error(tr("Qualcosa e\' andato storto, non riesco a scrivere il file: {}").format(e)) continue except KeyError as ke: - self.log.error(f"Chiave {ke} non trovata per:{outFileCounter} {ff['title']} ") + self.log.error(tr(f"Chiave {ke} non trovata per:{outFileCounter} {ff['title']} ")) except Exception as ee: traceback.print_exc() - self.log.error(f"Errore generale nel salvataggio: {ee}") + self.log.error(tr(f"Errore generale nel salvataggio: {ee}")) if outFileCounter < self.bodyCounter: - self.log.error("Ho salvato meno file rispetto a quelli trovati!") + self.log.error(tr("Ho salvato meno file rispetto a quelli trovati!")) pass def saveBody(self): - self.log.info('Salvo gli articoli in un singolo file vicino agli originali...') - self.log.debug('Persorso: {0}'.format(self.outPath)) + self.log.info(tr('Salvo gli articoli in un singolo file vicino agli originali...')) + self.log.debug(tr('Persorso: {0}').format(self.outPath)) #os.chdir(self.outPath) try: fName=slugify(self.fileName) @@ -394,9 +394,9 @@ class bananaSPLITTER(QObject): out.write(fileContent.encode(self.settings['encoding'])) out.close() except IOError as e: - self.log.error("Qualcosa e\' andato storto, non riesco a scrivere il file: {}".format(e)) + self.log.error(tr("Qualcosa e\' andato storto, non riesco a scrivere il file: {}").format(e)) except Exception as ee: - self.log.error(f"Errore generale nel salvataggio: {ee}") + self.log.error(tr(f"Errore generale nel salvataggio: {ee}")) pass