J'ai un vieux python script qui utilise la journalisation que je viens de mettre à jour en ajoutant pywinauto.
Toutes les lignes de journal sont écrites comme prévu dans le fichier journal, mais une fois que pywinauto est importé, j'obtiens deux copies de la ligne écrite dans la console.
En commentant la ligne import pywinauto, on résout le problème (mais ce n'est pas une vraie solution car j'ai besoin d'utiliser la bibliothèque).
import logging
import pywinauto
# Set up a script_logger.
script_logger = logging.getLogger('test')
script_logger.setLevel(logging.DEBUG)
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(formatter)
script_logger.addHandler(ch)
logFilename = "debug.log"
fh = logging.FileHandler(logFilename)
fh.setLevel(logging.DEBUG)
ch.setFormatter(formatter)
script_logger.addHandler(fh)
script_logger.debug("Hello world")
Sortie typique (première ligne attendue, deuxième ligne non)
2016-12-15 17:43:09,056 - test - DEBUG - Hello world
2016-12-15 17:43:09,056 DEBUG: Hello world
Je peux voir que la deuxième ligne est créée à l'intérieur de
Lib \site -packages \pywinauto\actionlogger.py
Des idées ?
Merci