From 947d50da4e96d899ae2303ba60dbe3f3180de76f Mon Sep 17 00:00:00 2001 From: Christophe Benz Date: Wed, 2 Jun 2010 17:46:28 +0200 Subject: [PATCH] better handle utf-8 --- weboob/frontends/videoob/videoob.py | 2 +- weboob/tools/application/console.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/weboob/frontends/videoob/videoob.py b/weboob/frontends/videoob/videoob.py index 020c07f9..49856c50 100644 --- a/weboob/frontends/videoob/videoob.py +++ b/weboob/frontends/videoob/videoob.py @@ -47,6 +47,6 @@ class Videoob(ConsoleApplication): @ConsoleApplication.command('Search videos') def command_search(self, pattern=None): - print u'Search pattern: %s' % pattern if pattern else u'Last videos' + print (u'Search pattern: %s' % pattern if pattern else u'Last videos').encode('utf-8') for backend, video in self.weboob.do('iter_search_results', pattern=pattern, nsfw=self.options.nsfw): self.format(video) diff --git a/weboob/tools/application/console.py b/weboob/tools/application/console.py index 40bedbef..653493f5 100644 --- a/weboob/tools/application/console.py +++ b/weboob/tools/application/console.py @@ -157,15 +157,17 @@ class ConsoleApplication(BaseApplication): self.formatter.flush() # Process result if value is returned by command - if isinstance(command_result, (str, unicode)): + if isinstance(command_result, str): print command_result + elif isinstance(command_result, unicode): + print command_result.encode('utf-8') elif isinstance(command_result, int): return command_result elif command_result is None: return 0 else: try: - print unicode(command_result) + print unicode(command_result).encode('utf-8') except ValueError: raise Exception(u'Command result type not expected: %s' % type(command_result))