From 05a6bb79e4b4f1f04ebc8601ac9eb757e7b4ba86 Mon Sep 17 00:00:00 2001 From: Laurent Bachelier Date: Sun, 8 May 2011 13:26:12 +0200 Subject: [PATCH] Also log redirects when saving responses and debugging (refs #398) set_debug_responses is not needed as we already save the responses in a better way. --- weboob/tools/application/base.py | 6 +++++- weboob/tools/browser/browser.py | 7 +++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/weboob/tools/application/base.py b/weboob/tools/application/base.py index b63f04c8..705405bd 100644 --- a/weboob/tools/application/base.py +++ b/weboob/tools/application/base.py @@ -293,6 +293,11 @@ class BaseApplication(object): if self.options.debug or self.options.save_responses: level = logging.DEBUG + from weboob.tools.browser import BaseBrowser + BaseBrowser.DEBUG_MECHANIZE = True + # required to actually display or save the stuff + logger = logging.getLogger("mechanize") + logger.setLevel(logging.INFO) elif self.options.verbose: level = logging.INFO elif self.options.quiet: @@ -305,7 +310,6 @@ class BaseApplication(object): if self.options.save_responses: responses_dirname = tempfile.mkdtemp(prefix='weboob_session_') print >>sys.stderr, 'Debug data will be saved in this directory: %s' % responses_dirname - from weboob.tools.browser import BaseBrowser BaseBrowser.SAVE_RESPONSES = True BaseBrowser.responses_dirname = responses_dirname self.add_logging_file_handler(os.path.join(responses_dirname, 'debug.log')) diff --git a/weboob/tools/browser/browser.py b/weboob/tools/browser/browser.py index fa11b06e..a3674849 100644 --- a/weboob/tools/browser/browser.py +++ b/weboob/tools/browser/browser.py @@ -136,6 +136,7 @@ class BaseBrowser(mechanize.Browser): USER_AGENT = USER_AGENTS['desktop_firefox'] SAVE_RESPONSES = False DEBUG_HTTP = False + DEBUG_MECHANIZE = False responses_dirname = None responses_count = 0 @@ -234,10 +235,12 @@ class BaseBrowser(mechanize.Browser): pass if self.DEBUG_HTTP: + # display messages from httplib + self.set_debug_http(True) + + if self.DEBUG_MECHANIZE: # Enable log messages from mechanize.Browser self.set_debug_redirects(True) - self.set_debug_responses(True) - self.set_debug_http(True) def __enter__(self): self.lock.acquire()