From 29819f703c8013b1ecff718319c7b773b60ec5c6 Mon Sep 17 00:00:00 2001 From: ssut Date: Mon, 6 Jul 2015 14:31:08 +0900 Subject: [PATCH] Add languages, and print excetion with details --- googletrans/conversion.py | 68 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 66 insertions(+), 2 deletions(-) diff --git a/googletrans/conversion.py b/googletrans/conversion.py index 1778176..698159e 100644 --- a/googletrans/conversion.py +++ b/googletrans/conversion.py @@ -1,10 +1,13 @@ """A conversion module for googletrans""" +from __future__ import print_function import re +import traceback import json -def format_json(text): +def format_json(original): # save state states = [] + text = original for i, pos in enumerate(re.finditer('"', text)): p = pos.start() + 1 if i % 2 == 0: @@ -27,5 +30,66 @@ def format_json(text): # use slicing to extract those parts of the original string to be kept text = text[:p] + states[j][1] + text[nxt:] - converted = json.loads(text) + try: + converted = json.loads(text) + except ValueError as e: + print('original text: ', original, ' => ', text) + traceback.print_exc() return converted + +LANGUAGES = { + 'af': 'afrikaans', + 'sq': 'albanian', + 'ar': 'arabic', + 'be': 'belarusian', + 'bg': 'bulgarian', + 'ca': 'catalan', + 'zh-CN': 'chinese_simplified', + 'zh-TW': 'chinese_traditional', + 'hr': 'croatian', + 'cs': 'czech', + 'da': 'danish', + 'nl': 'dutch', + 'en': 'english', + 'eo': 'esperanto', + 'et': 'estonian', + 'tl': 'filipino', + 'fi': 'finnish', + 'fr': 'french', + 'gl': 'galician', + 'de': 'german', + 'el': 'greek', + 'iw': 'hebrew', + 'hi': 'hindi', + 'hu': 'hungarian', + 'is': 'icelandic', + 'id': 'indonesian', + 'ga': 'irish', + 'it': 'italian', + 'ja': 'japanese', + 'ko': 'korean', + 'la': 'latin', + 'lv': 'latvian', + 'lt': 'lithuanian', + 'mk': 'macedonian', + 'ms': 'malay', + 'mt': 'maltese', + 'no': 'norwegian', + 'fa': 'persian', + 'pl': 'polish', + 'pt': 'portuguese', + 'ro': 'romanian', + 'ru': 'russian', + 'sr': 'serbian', + 'sk': 'slovak', + 'sl': 'slovenian', + 'es': 'spanish', + 'sw': 'swahili', + 'sv': 'swedish', + 'th': 'thai', + 'tr': 'turkish', + 'uk': 'ukrainian', + 'vi': 'vietnamese', + 'cy': 'welsh', + 'yi': 'yiddish', + }