diff --git a/nhentai/cmdline.py b/nhentai/cmdline.py index 51b541f..5be7e0b 100644 --- a/nhentai/cmdline.py +++ b/nhentai/cmdline.py @@ -13,8 +13,12 @@ from nhentai.utils import urlparse, generate_html from nhentai.logger import logger try: - reload(sys) - sys.setdefaultencoding(sys.stdin.encoding) + if sys.version_info < (3, 0, 0): + import codecs + import locale + sys.stdout = codecs.getwriter(locale.getpreferredencoding())(sys.stdout) + sys.stderr = codecs.getwriter(locale.getpreferredencoding())(sys.stderr) + except NameError: # python3 pass diff --git a/nhentai/logger.py b/nhentai/logger.py index 9a1fb19..8aa46b8 100644 --- a/nhentai/logger.py +++ b/nhentai/logger.py @@ -104,7 +104,10 @@ class ColorizingStreamHandler(logging.StreamHandler): text = parts.pop(0) if text: - write(text) + if sys.version_info < (3, 0, 0): + write(text.encode('utf-8')) + else: + write(text) if parts: params = parts.pop(0) diff --git a/nhentai/parser.py b/nhentai/parser.py index 1517e72..bea6050 100644 --- a/nhentai/parser.py +++ b/nhentai/parser.py @@ -157,8 +157,8 @@ def print_doujinshi(doujinshi_list): return doujinshi_list = [(i['id'], i['title']) for i in doujinshi_list] headers = ['id', 'doujinshi'] - logger.info('Search Result\n' + - tabulate(tabular_data=doujinshi_list, headers=headers, tablefmt='rst')) + data = tabulate(tabular_data=doujinshi_list, headers=headers, tablefmt='rst') + logger.info('Search Result\n{}'.format(data)) def tag_parser(tag_id):