Beispiel #1
0
class Mangle:
  
  def __init__(self):
    self.translator = Translator(client_id, client_secret) 
    self.langs = self.translator.get_languages()

  def mangle(self, message_text, language='en', times=0):

    # If they didn't specify, pick a random number of 
    #     times to scramble.
    if times == 0: times = random.randint(low, high)

    for i in range(times):

      rand_lang = random.choice(self.langs)

      message_text = self.translator.translate(message_text, 
                                          from_lang=language, 
                                          to_lang=rand_lang)

      message_text = self.translator.translate(message_text,
                                          from_lang=rand_lang,
                                          to_lang=language)

    return message_text
Beispiel #2
0
def translate_bing(text, in_lang, out_lang, bot):
    if not bot.config.has_option('translate', 'bing_user') or not bot.config.has_option('translate', 'bing_pass'):
        return 'No se ha habilitado el uso de bing en este bot!'
    else:
        user = bot.config.translate.bing_user
        password = bot.config.translate.bing_pass
    translator = Translator(user, password)
    if in_lang == 'auto':
       return translator.translate(text, out_lang)
    else:
       return translator.translate(text, out_lang, in_lang)
Beispiel #3
0
def translate_bing(text, in_lang, out_lang, bot):
    if not bot.config.has_option('translate', 'bing_user') or not bot.config.has_option('translate', 'bing_pass'):
        return 'No se ha habilitado el uso de bing en este bot!'
    else:
        user = bot.config.translate.bing_user
        password = bot.config.translate.bing_pass
    translator = Translator(user, password)
    if in_lang == 'auto':
       return translator.translate(text, out_lang)
    else:
       return translator.translate(text, out_lang, in_lang)
def speakCaption():
    filename = str(datetime.now()) + ".png"
    os.rename("./pepper_picture/now.png", "./pepper_picture/" + filename)

    print "Creating caption..."
    script = 'curl -F "file=@./pepper_picture/' + filename + '" localhost:8000'
    result = commands.getoutput(script).split("\n")[3]
    print result
    
    print "Translating..."
    translator = Translator('Your client ID', 'Your client secret') #change this line
    result = translator.translate(result, "ja")
    print result
    
    print "Creating wav.file with Rospeex and preparing speech..."
    tts_command = { "method":"speak",
                    "params":["1.1",
                    {"language":"ja","text":result,"voiceType":"*","audioType":"audio/x-wav"}]}
    
    obj_command = json.dumps(tts_command) # string to json object
    req = urllib2.Request(tts_url, obj_command)
    received = urllib2.urlopen(req).read() # get data from server
    
    obj_received = json.loads(received)
    tmp = obj_received['result']['audio'] # extract result->audio
    speech = base64.decodestring(tmp.encode('utf-8'))
    
    f = open ("./result_voice/out.wav",'wb')
    f.write(speech)
    f.close
    
    commands.getoutput('aplay ./result_voice/out.wav')
Beispiel #5
0
def translate_text(request):
    language_from = request.GET.get('from', None)
    language_to = request.GET.get('to', None)
    text = request.GET.get('text', None)

    if language_from == language_to:
        data = {'success': True, 'translation': text}
    else:
        # run the translation:

        if getattr(rosetta_settings, 'GOOGLE_TRANSLATE', False):
            import goslate
            translator = goslate.Goslate()
        else:
            AZURE_CLIENT_ID = getattr(settings, 'AZURE_CLIENT_ID', None)
            AZURE_CLIENT_SECRET = getattr(settings, 'AZURE_CLIENT_SECRET', None)

            translator = Translator(AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)

        try:
            translated_text = translator.translate(text, language_to, language_from)
            data = {'success': True, 'translation': translated_text}
        except TranslateApiException as e:
            data = {'success': False, 'error': "Translation API Exception: {0}".format(e.message)}

    return HttpResponse(json.dumps(data), content_type='application/json')
Beispiel #6
0
def translate(entities):
    message = ""

    try:
        text_for_translation = entities['phrase_to_translate'][0]['value']
        lang = entities['language'][0]['value'].lower()
        language = ""
        if lang == "spanish":
            language = "es"
        elif lang == "french":
            language = "fr"
        elif lang == "german":
            language = "de"
        elif lang == "chinese":
            language = "zh-CHS"
        else:
            message = "We don't support translation to " + lang + " as of now. Check back later as support is being added."
            return message

        message = "\"" + text_for_translation + "\" in " + lang + " is \'"
        translator = Translator(
            'SMSAssistant', 'fhV+AdYFiK0QfQ4PFys+oQ/T0xiBBVQa32kxxbP55Ks=')
        message += translator.translate(text_for_translation, language) + "\'"

        if test_mode:
            send_sms_to_admin(message)

    except:
        message = technical_issues()

    return message
Beispiel #7
0
def translate_text(request):
    language_from = request.GET.get('from', None)
    language_to = request.GET.get('to', None)
    text = request.GET.get('text', None)

    if language_from == language_to:
        data = {'success': True, 'translation': text}
    else:
        # run the translation:

        AZURE_CLIENT_ID = getattr(settings, 'AZURE_CLIENT_ID', None)
        AZURE_CLIENT_SECRET = getattr(settings, 'AZURE_CLIENT_SECRET', None)

        translator = Translator(AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)

        try:
            translated_text = translator.translate(text, language_to, language_from)
            data = {'success': True, 'translation': translated_text}
        except TranslateApiException as e:
            data = {
                'success': False,
                'error': "Translation API Exception: {0}".format(e.message),
            }

    return JsonResponse(data)
def translate(text, from_lang="zh", to_lang=None, max_nb_lines=None):
    u'''Translate to a different language. 
    Eg: '你好' becomes 'Hello'
    Only installed dictionaries can be used.

    to_lang possible values : CEDICT, HanDeDict, CFDICT,
    or 2-letter ISO language code for MS Translate
    
    if to_lang is unspecified, the default language will be used.
    '''
    global MS_translator_object
    if "" == text:
        return ""
    if None == to_lang:
        to_lang = chinese_support_config.options["dictionary"]
        if "None" == to_lang:
            return ""
    if to_lang in ["CEDICT", "CFDICT", "HanDeDict"]:  #Local dict
        return translate_local(text, from_lang, to_lang, max_nb_lines)
    else:  #Ms translate
        if None == MS_translator_object:
            MS_translator_object = MSTranslator(
                "chinese-support-add-on",
                "Mh+X5YY17LZZ8rO9hzJXYD3I02V3E+ltItF15ep7qG8=")
        try:
            return MS_translator_object.translate(text, to_lang)
        except:
            return ""
def translate(text, from_lang="zh", to_lang=None, max_nb_lines=None):
    u'''Translate to a different language. 
    Eg: '你好' becomes 'Hello'
    Only installed dictionaries can be used.

    to_lang possible values : CEDICT, HanDeDict, CFDICT,
    or 2-letter ISO language code for MS Translate
    
    if to_lang is unspecified, the default language will be used.
    '''
    global MS_translator_object
    if "" == text:
        return ""
    if None == to_lang:
        to_lang = chinese_support_config.options["dictionary"]
        if "None" == to_lang:
            return ""
    if to_lang in ["CEDICT", "CFDICT", "HanDeDict"]: #Local dict
        return translate_local(text, from_lang, to_lang, max_nb_lines)    
    else:  #Ms translate
        if None == MS_translator_object:
            MS_translator_object = MSTranslator("chinese-support-add-on", "Mh+X5YY17LZZ8rO9hzJXYD3I02V3E+ltItF15ep7qG8=")
        try:
            return MS_translator_object.translate(text, to_lang)
        except:
            return ""
Beispiel #10
0
def translate_text(request):
    if RosettaSettings.instance().readonly:
        data = {'success': False, 'error': 'System in readonly mode. Please try later.'}
    else:
        language_from = request.GET.get('from', None)
        language_to = request.GET.get('to', None)
        text = request.GET.get('text', None)

        if language_from == language_to:
            data = {'success': True, 'translation': text}
        else:
            # run the translation:

            AZURE_CLIENT_ID = getattr(settings, 'AZURE_CLIENT_ID', None)
            AZURE_CLIENT_SECRET = getattr(settings, 'AZURE_CLIENT_SECRET', None)

            translator = Translator(AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)

            try:
                translated_text = translator.translate(text, language_to, language_from)
                data = {'success': True, 'translation': translated_text}
            except TranslateApiException as e:
                data = {'success': False, 'error': "Translation API Exception: {0}".format(e.message)}

    return HttpResponse(json.dumps(data), content_type='application/json')
Beispiel #11
0
def translate_text(request):
    language_from = request.GET.get('from', None)
    language_to = request.GET.get('to', None)
    text = request.GET.get('text', None)

    if language_from == language_to:
        data = {'success': True, 'translation': text}
    else:
        # run the translation:

        if getattr(rosetta_settings, 'GOOGLE_TRANSLATE', False):
            import goslate
            translator = goslate.Goslate()
        else:
            AZURE_CLIENT_ID = getattr(settings, 'AZURE_CLIENT_ID', None)
            AZURE_CLIENT_SECRET = getattr(settings, 'AZURE_CLIENT_SECRET',
                                          None)

            translator = Translator(AZURE_CLIENT_ID, AZURE_CLIENT_SECRET)

        try:
            translated_text = translator.translate(text, language_to,
                                                   language_from)
            data = {'success': True, 'translation': translated_text}
        except TranslateApiException as e:
            data = {
                'success': False,
                'error': "Translation API Exception: {0}".format(e.message)
            }

    return HttpResponse(json.dumps(data), content_type='application/json')
Beispiel #12
0
 def _meal(self, msg, *args):
     """Displays a 'enjoy your meal' message in a random language"""
     rand_lang = self._get_random_lang()
     meal = 'Enjoy your meal'
     translator = Translator(self._trans_client_id, self._trans_client_sec)
     translated = translator.translate(meal, rand_lang[0])
     return '{} (translated to {})'.format(translated, rand_lang[1])
Beispiel #13
0
    def translate(self):

        #prepare the translate environment

        translator = Translator(self.client_id, self.client_secret)

        #prepare the phantom server
        driver = webdriver.PhantomJS()
        print("server ready")
        for i in range(1, self.linkcount + 1):
            link = self.weblinkdic[i]

            driver.get(link)
            time.sleep(3)
            print("get link")
            description = driver.find_element_by_tag_name("body").text

            print(link)
            g = open("../translate/" + str(i) + ".txt", 'w+')
            for line in description.split('\n'):
                if len(line) > 5:
                    line = line.strip()
                    try:
                        trans_line = translator.translate(line, 'zh-CHS', 'en')
                    except:
                        sys.exit("Error message")
                    g.write(line + '\n')
                    g.write(trans_line + '\n')

            g.close()

        driver.close()
        return
Beispiel #14
0
    def translate(self):

        #prepare the translate environment
        client_id = self.variable.get()
        client_secret = self.userpasswd[client_id]
        translator = Translator(client_id, client_secret)

        #prepare the phantom server
        driver = webdriver.PhantomJS()
        for i in range(1,2):
            link = self.weblinkdic[i]
        
            driver.get(link)
            time.sleep(3)
            description = driver.find_element_by_tag_name("body").text
            #find_element_by_id
            #find_element_by_css_selector
            
            print(link)
            g = open("../translate/" +str(i)+".txt", 'w+')
            for line in description.split('\n'):
                if len(line)>5:
                    line = line.strip()
                    try:
                        trans_line = translator.translate(line, 'zh-CHS', 'en')
                    except:
                        sys.exit("Error message")
                    g.write(trans_line + '\n')

            g.close()

        driver.close()
        return
Beispiel #15
0
 def call_translate_method(self, text, from_language, to_language):
     # This is supposed to be secret. I'm not really worried unless we distribute this thing.
     translator = Translator("HypeBot", "6QvARrt7O0/JPsUeNRDeixHIGozNb6O7Gd5cFjFLjYU=")
     if from_language == None:
         from_language = translator.detect_language(text=text)
     if to_language == None:
         to_language = 'en'  # Assume English
     return translator.translate(text=text, to_lang=to_language, from_lang=from_language)
Beispiel #16
0
def run_command(msg, *args):
    """Displays a 'enjoy your meal' message in a random language"""
    lang_code, country = jabberbot.locale.random()
    meal = 'Enjoy your meal'
    translator = Translator(trans_client_id, trans_client_sec)
    translated = translator.translate(meal, lang_code)
    meal = '{} (translated to {})'.format(translated, country)
    return 'groupchat', meal
Beispiel #17
0
def send():
    with sqlite3.connect("sample.db") as connection:
        c = connection.cursor()
        cht = request.form['msg']
        translator = Translator('rk', os.environ['CLIENT_KEY'])
        p = translator.translate(cht, "hi")
        t = time.strftime("%Y-%m-%d %H:%M:%S")
        c.execute("INSERT INTO chats(chat, time, name) VALUES(?, ?, ?)", (p, t,session.get('logged_in_user')))
    return "Ok"
Beispiel #18
0
def example_mstranslator():
    """
    Ref:   https://github.com/wronglink/mstranslator/blob/master/mstranslator.py

    """
    from mstranslator import Translator
    translator = Translator('ecnu_translator',
                            'sc6x4pJQDBtyqmGhhRmOknjeeXcL1YGBUTkvZLtn62k=')
    print(translator.translate('Привет, мир!', lang_from='ru', lang_to='en'))
Beispiel #19
0
def get(parameter, channel, author, folder):
    if not parameter:
        return None
    params = parameter.split(" ",2)
    client = Translator(config.AZURE_CLIENT_ID, config.AZURE_CLIENT_SECRET)
    try:
        return client.translate(params[2].decode("utf-8"), params[1], from_lang=params[0]).encode("utf-8")
    except:
        return "Viga! Kasutamine: !trans lähtekeelekood sihtkeelekood tekst"
Beispiel #20
0
def C3POTranslate(c3pouser, c3pomessage, c3pochannel):
    translator = Translator('c3po',
                            'KgKKwR+UILpk0IUlZ0VaZTtBbOrXFqzsgit8y8jNK3M=')
    message = c3pomessage.split(' ', 1)[1]
    language = 'en'
    translated = translator.translate(message, language)
    print sc.api_call("chat.postMessage",
                      as_user="******",
                      channel=c3pochannel,
                      text=translated)
Beispiel #21
0
class TranslateBing:
    def __init__(self, logger):
        self.bing = Translator('l2a',
                               '9W6zDb3DBJ77SCjWPOHZsp5y75j5gJvu0z0pjn9zdHk=')
        self.logger = logger.getChild(__name__)

    def translate(self, source, to_lang=None):
        self.logger.debug(source)
        if (not to_lang):
            to_lang = "ja" if self.bing.detect_language(
                source) == "en" else "en"
        return (self.bing.translate(source, to_lang))
def post_request():
    # request.formにPOSTデータがある
    source = request.form["source"]
    df=pd.read_csv("secret_bing_translate.csv", header=None)
    NAME_TRANS = df[0][0]
    KEY_TRANS = df[0][1]
    translator = Translator(NAME_TRANS, KEY_TRANS)
    to_lang = request.form["to_lang"]
    from_lang = request.form["from_lang"]
    result = translator.translate(source, to_lang, from_lang)
    global firstevent
    histories[source] = result
    return render_template('index.html', message="翻訳結果", source = source, result=result, histories = histories)
Beispiel #23
0
    def _birthday(self, msg, *args):
        """Sends a happy birthday in an random language greeting

You can add a nickname: bday <nick>
        """
        rand_lang = self._get_random_lang()
        greet = 'Happy birthday to you'
        translator = Translator(self._trans_client_id, self._trans_client_sec)
        translated = translator.translate(greet, rand_lang[0])
        if args:
            return '{} @{} (translated to {})'.format(translated,
                                                      ' '.join(args),
                                                      rand_lang[1])
        return '{} (translated to {})'.format(translated, rand_lang[1])
Beispiel #24
0
def run_command(msg, *args):
    """Sends a happy birthday in an random language greeting

You can add a nickname: bday <nick>
    """
    lang_code, country = jabberbot.locale.random()
    greet = 'Happy birthday to you'
    translator = Translator(trans_client_id, trans_client_sec)
    translated = translator.translate(greet, lang_code)
    mtype = 'groupchat'
    if args:
        return mtype, '{} @{} (translated to {})'.format(
            translated, ' '.join(args), country)
    return mtype, '{} (translated to {})'.format(translated, country)
Beispiel #25
0
class BingTranslator:
    def __init__(self):
        client_id = os.environ.get("BING_TRANSLATION_CLIENT_ID", "gigaware123")
        client_secret = os.environ.get("BING_TRANSLATION_SECRET", "Dp3afp41sR/sDsKRK3uWPt2i4WbAKqKB5q6RhCI9a1Q=")

        if not client_id or not client_secret:
            raise Exception("bing translation client id or client secret not found")

        self.translator = Translator(client_id, client_secret)

    def translate(self, untranslated, target_language):
        return self.translator.translate(untranslated, target_language, from_lang='en')

    def translate_all(self, untranslated, target_language):
        return self.translator.translate_array(untranslated, target_language, from_lang='en')
Beispiel #26
0
def read_entry(entry):
    session_attributes = {}
    reprompt_text = None
    should_end_session = True
    speech_output = ''

    translator = Translator('wykopalexa',
                            'Y3ThYcaJRUm0Y2zfF0oTlz92c3UDIaDKup+KD7Ror3k=')
    entryText = re.sub('<[^<]+?>', '', entry['body'])
    speech_output = translator.translate(entryText, 'en-us', 'pl')

    return build_response(
        session_attributes,
        build_speechlet_response('wykop', speech_output, reprompt_text,
                                 should_end_session))
Beispiel #27
0
class Mangle:
    def __init__(self):
        self.translator = Translator(client_id, client_secret)
        self.langs = self.translator.get_languages()

    def mangle(self, message_text, language='en', times=0):

        # If they didn't specify, pick a random number of
        #     times to scramble.
        if times == 0: times = random.randint(low, high)

        for i in range(times):

            rand_lang = random.choice(self.langs)

            message_text = self.translator.translate(message_text,
                                                     from_lang=language,
                                                     to_lang=rand_lang)

            message_text = self.translator.translate(message_text,
                                                     from_lang=rand_lang,
                                                     to_lang=language)

        return message_text
Beispiel #28
0
class MSTranslator():

    def __init__(self, client_id, client_secret):
        self.client_id = client_id
        self.client_secret = client_secret
        self.translator = Translator(client_id, client_secret)

    def detect(self, text):
        code = self.translator.detect_language(text)
        lang = Language(code)
        return lang

    def translate(self, text, target_lang="ja"):
        translated_text = self.translator.translate(text, target_lang)
        return translated_text
Beispiel #29
0
def run_command(msg, *args):
    """Sends a happy birthday in an random language greeting

You can add a nickname: bday <nick>
    """
    lang_code, country = jabberbot.locale.random()
    greet = 'Happy birthday to you'
    translator = Translator(trans_client_id, trans_client_sec)
    translated = translator.translate(greet, lang_code)
    mtype = 'groupchat'
    if args:
        return mtype, '{} @{} (translated to {})'.format(
            translated,
            ' '.join(args),
            country)
    return mtype, '{} (translated to {})'.format(translated, country)
def translate_Bing(text):
    '''
    This method translates a text string to english with the Microsoft Bing_translator.
    Note that this translator only translates 2.000.000 Letters / Month for free using
    a Microsoft account and the registered client with secret.

    :param text: String that is to be translated
    :return: english translation of the text
    '''
    client_id = 'EuropenaTranslator'
    client_secret = 'iAcywBlP37WpSs/qxNVdlCOjVXYSti+L9YTUvBx4ets='

    translator = Translator(client_id, client_secret)
    text4translation = translator.translate(text, 'en')

    return text4translation
Beispiel #31
0
def translate(entities):
    phrase_to_translate = entities.get('phrase_to_translate')[0].get('value')
    message = ""
    if entities.get('language') == None:
        message = "Language not supported"
    else:
        language = entities.get('language')[0].get('value')
        language = language.lower()
        if language == "chinese" or language == "zh-CHS":
            language = "zh-CHS"
        elif language == "dutch" or language == "nl":
            language = "nl"
        elif language == "english" or language == "en":
            language = "en"
        elif language == "french" or language == "fr":
            language = "fr"
        elif language == "german" or language == "de":
            language = "de"
        elif language == "italian" or language == "it":
            language = "it"
        elif language == "japanese" or language == "ja":
            language = "ja"
        elif language == "korean" or language == "ko":
            language = "ko"
        elif language == "portuguese" or language == "pt":
            language = "pt"
        elif language == "russian" or language == "ru":
            language = "ru"
        elif language == "spanish" or language == "es":
            language = "es"
        elif language == "swedish" or language == "sv":
            language = "sv"
        elif language == "thai" or language == "th":
            language = "th"
        elif language == "vietnamese" or language == "vi":
            language = "vi"
        else:
            message = "Language not supported"
    if message != "Language not supported":
        translator = Translator('SMSAssistant', 'fhV+AdYFiK0QfQ4PFys+oQ/T0xiBBVQa32kxxbP55Ks=')
        message = translator.translate(phrase_to_translate, language)
    resp = twilio.twiml.Response()
    # print message
    resp.message(message)
    return resp
Beispiel #32
0
def speakCaption():
    filename = str(datetime.now()) + ".png"
    os.rename("./pepper_picture/now.png", "./pepper_picture/" + filename)

    print "Creating caption..."
    script = 'curl -F "file=@./pepper_picture/' + filename + '" localhost:8000'
    result = commands.getoutput(script).split("\n")[3]
    print result

    print "Translating..."
    translator = Translator('Your client ID',
                            'Your client secret')  #change this line
    result = translator.translate(result, "ja")
    print result

    print "Creating wav.file with Rospeex and preparing speech..."
    tts_command = {
        "method":
        "speak",
        "params": [
            "1.1", {
                "language": "ja",
                "text": result,
                "voiceType": "*",
                "audioType": "audio/x-wav"
            }
        ]
    }

    obj_command = json.dumps(tts_command)  # string to json object
    req = urllib2.Request(tts_url, obj_command)
    received = urllib2.urlopen(req).read()  # get data from server

    obj_received = json.loads(received)
    tmp = obj_received['result']['audio']  # extract result->audio
    speech = base64.decodestring(tmp.encode('utf-8'))

    f = open("./result_voice/out.wav", 'wb')
    f.write(speech)
    f.close

    commands.getoutput('aplay ./result_voice/out.wav')
def translate(text, from_lang="zh", to_lang=None, progress_bar=True):
    u'''Translate to a different language. 
    Eg: '你好' becomes 'Hello'
    Only installed dictionaries can be used.

    to_lang possible values : "local_en", "local_de", "local_fr"
    or a 2-letter ISO language code for MS Translate
    
    if to_lang is unspecified, the default language will be used.
    if progress_bar is True, then will display a progress bar.
    '''
    global MS_translator_object
    text = cleanup(text)
    if "" == text:
        return ""
    if None == to_lang:
        to_lang = chinese_support_config.options["dictionary"]
        if "None" == to_lang:
            return ""
    if to_lang.startswith("local_"):  #Local dict
        return translate_local(text, to_lang[-2:])
    else:  #Ms translate
        ret = ""
        if progress_bar:
            mw.progress.start(label="MS Translator lookup", immediate=True)
        if None == MS_translator_object:
            MS_translator_object = MSTranslator(
                "chinese-support-add-on",
                "Mh+X5YY17LZZ8rO9hzJXYD3I02V3E+ltItF15ep7qG8=")
        try:
            ret = MS_translator_object.translate(text, to_lang)
        except:
            pass

        if "ArgumentException:" == ret[:18]:
            #Token has probably expired
            ret = ""
        if progress_bar:
            mw.progress.finish()
        return ret
def translate(text, from_lang="zh", to_lang=None, progress_bar=True):
    u'''Translate to a different language. 
    Eg: '你好' becomes 'Hello'
    Only installed dictionaries can be used.

    to_lang possible values : "local_en", "local_de", "local_fr"
    or a 2-letter ISO language code for MS Translate
    
    if to_lang is unspecified, the default language will be used.
    if progress_bar is True, then will display a progress bar.
    '''
    global MS_translator_object
    text = cleanup(text)
    if "" == text:
        return ""
    if None == to_lang:
        to_lang = chinese_support_config.options["dictionary"]
        if "None" == to_lang:
            return ""
    if to_lang.startswith("local_"): #Local dict
        return translate_local(text, to_lang[-2:])
    else:  #Ms translate
        ret = ""
        if progress_bar:
            mw.progress.start(label="MS Translator lookup", immediate=True)
        if None == MS_translator_object:
            MS_translator_object = MSTranslator("chinese-support-add-on", "Mh+X5YY17LZZ8rO9hzJXYD3I02V3E+ltItF15ep7qG8=")
        try:
            ret = MS_translator_object.translate(text, to_lang)
        except:
            pass
        
        if "ArgumentException:" == ret[:18]:
            #Token has probably expired
            ret=""
        if progress_bar:
            mw.progress.finish()
        return ret
Beispiel #35
0
    def translate(self):

        #prepare the translate environment
        client_id = self.variable.get()
        client_secret = self.userpasswd[client_id]
        translator = Translator(client_id, client_secret)

        #prepare the phantom server
        #driver = webdriver.PhantomJS()
        #print("server ready")
        for i in range(1, 20):
            link = self.weblinkdic[i]

            try:
                html = urlopen(link)
                bsObj = BeautifulSoup(html.read())
                description = bsObj.p.get_text().encode('utf-8')
                print(description)

                print(link)
                g = open("../translate/" + str(i) + ".txt", 'w+')
                for line in description.split('\n'):
                    if len(line) > 5:
                        line = line.strip()
                        try:
                            trans_line = translator.translate(
                                line, 'zh-CHS', 'en')
                            g.write(trans_line + '\n')
                        except:
                            sys.exit("Error message")

                g.close()

            except:
                sys.exit("Error Message")
        return
Beispiel #36
0
def translate():
	#missingword = request.form['missingword']
	#to_language = request.form['to_language']
	missingword = 'envelope'
	to_language = 'ja'
	#from_language = request.form['from_language']

	#翻訳
	print '1step'
	translator = Translator('skeven', 'vizaHdZEjZkP0ZdL/B3CQ0UO9yzsgmTT2hDtuvJFdL0=')
	# from_languageは自動的に判別されるので指定する必要が無い
	translated_word = translator.translate(missingword, to_language)
	print '2step'
	#translated_word = translator.translate("Hello", "ja")
	# Registering Word to DB(CSV?)
	languagetype = translator.detect_language(missingword)
	print '3step'

	inlinecsv = languagetype + '$YIN$' + missingword + '$YIN$' + to_language + "$YIN$" + translated_word + '\n'
	print inlinecsv
	f = open('./word/addinfo_dictionary_utf8.txt', 'a')
	f.write(inlinecsv.encode('utf-8'))
	f.close()
	return translated_word;
 def test_invalid_client_id(self):
     client = Translator("foo", "bar")
     with self.assertRaises(TranslateApiException):
         client.translate("hello", "pt")
 def test_translate_array(self):
     client = Translator(client_id, client_secret, debug=True)
     self.assertEqual(client.translate("hello", "pt"), u'Ol\xe1')
Beispiel #39
0
  def _handle_timeline_notification(self, data):
    """Handle timeline notification."""
    for user_action in data.get('userActions', []):

      if user_action.get('type') == 'SHARE':
        # Fetch the timeline item.
        item = self.mirror_service.timeline().get(id=data['itemId']).execute()
        attachments = item.get('attachments', [])
        media = None
        if attachments:
          # Get the first attachment on that timeline item and do stuff with it.
          attachment = self.mirror_service.timeline().attachments().get(
              itemId=data['itemId'],
              attachmentId=attachments[0]['id']).execute()
          resp, content = self.mirror_service._http.request(
              attachment['contentUrl'])
          if resp.status == 200:
            media = MediaIoBaseUpload(
                io.BytesIO(content), attachment['contentType'],
                resumable=True)
          else:
            logging.info('Unable to retrieve attachment: %s', resp.status)
        body = {
            'text': 'Echoing your shared item: %s' % item.get('text', ''),
            'notification': {'level': 'DEFAULT'}
        }
        self.mirror_service.timeline().insert(
            body=body, media_body=media).execute()
        # Only handle the first successful action.
        break

      if user_action.get('type') == 'REPLY':
        reply_id = data['itemId']
        result = self.mirror_service.timeline().get(id=reply_id).execute()
        origional_txt = result.get('text');
        translator = Translator(client_id, client_secret)
        translate_txt = translator.translate(origional_txt, "zh-CHS")
        logging.info('here!!!!!!!!!!!!!!!!')
        oauth_url = 'https://datamarket.accesscontrol.windows.net/v2/OAuth2-13'
        oauth_junk = json.loads(requests.post(oauth_url,data=urllib.urlencode(args)).content)
        headers={'Authorization': 'Bearer '+oauth_junk['access_token']}
        translation_url = "http://api.microsofttranslator.com/V2/Http.svc/Speak?"
        request_string = '%stext=%s&language=zh-CHS&format=audio/mp3' % (translation_url,translate_txt)
        translation_result = requests.get(request_string,headers=headers)
        reply_id = data['itemId']
        ###logging.info('translation_result is %s' ,translation_result.content)
        audio = translation_result.content
        audio_media = MediaIoBaseUpload(io.BytesIO(audio), mimetype='video/mp4', resumable=True)
        logging.info('%s is translated to %s' %  (origional_txt, translate_txt))
        ###clent.query_example()
        body = {
            'bundleId': 'words_with_glass',
            'menuItems': [{'action': 'DELETE'}],
            'text': translate_txt,
            'notification': {'level': 'DEFAULT'}
        }
        new_item = self.mirror_service.timeline().insert(body=body, media_body = audio_media).execute()
        logging.info("new_item %s", new_item)
        attachment_link = None
        attachment_link = self.get_attachment_link(new_item)
        ###attachment_link = 'URL: %s %s ' %(data['itemId'], attachments[0]['id'])
        logging.info(attachment_link)
        self.save_entry(origional_txt, translate_txt, str(attachment_link))

        new_template = { 'original': origional_txt,
                          'translated': translate_txt,
                          'audio': attachment_link 
        }
        self._insert_item(new_template)
        

        logging.info('attachments url is: %s', attachment_link)
        break

      # if user_action.get('type') == 'CUSTOM':
      #   logging.info("*** CUSTOM notify received")
      #   break

      else:
        logging.info(
            "I don't know what to do with this notification: %s", user_action)
for i in range(0,len(textos)):
  dicionario[ textos[i].contents[0].lower() ] =  float(polaridade[i].contents[0])

assert dicionario['december'] == 0.611

tradutor = Translator("0ef986af-2384-4257-9562-8aa9ac02abb5","8iDU8Hv04E4bQXTCCFvL1oj/RIITad3yX8TYxx+UC4o=")

#Testa se o tradutor esta funcionando
#assert tradutor.translate(unicode("Olá","utf-8"), 'en', 'pt') == "Hello"

arq_out = open('senticnet_pt.txt','a')
dicionario_pt = {}
texto = []
i = 0
for palavra in dicionario.keys():
  try:
    if i >= 200:
      tradutor = Translator("0ef986af-2384-4257-9562-8aa9ac02abb5","8iDU8Hv04E4bQXTCCFvL1oj/RIITad3yX8TYxx+UC4o=")
      i = 0
    palavra_pt = tradutor.translate(palavra, 'pt', 'en')
    dicionario_pt[palavra_pt] = dicionario[palavra]
    text = "%s\t%s\n"%(palavra_pt, dicionario[palavra])
    arq_out.write(text)
    print "%s\t%s\n"%(palavra, palavra_pt)
    time.sleep(2)
    i = i + 1
  except UnicodeEncodeError:
    print "erro codificacao"
    continue
arq.close()
Beispiel #41
0
# -*- coding: utf-8 -*-
from microsofttranslator import Translator

 translator = Translator('celiacPass', '+gpq62pRXYbq0eAQVb6RhvO4qUpCZKGdaSi+Prov/og=')

 languages = translator.get_languages()

 f = open('country_codes_to_countries.txt')
 codeToTranslation = {}
 for line in f:
     code = line.split(' ')[0]
     codeToTranslation[code] = translator.translate('I have Celiac Disease, a very serious intolerance to gluten, which is found in wheat, oats, barley and rye.', code)
 print codeToTranslation
Beispiel #42
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-

from microsofttranslator import Translator
# if this fails, do:
# sudo easy_install microsofttranslator

from ref_definitions2 import read_all_the_files

translator = Translator('finalproj',
                        'LZTVKNyxQEjmIUbMWp1HhkN4x9XkIbnT6fHhaJfLFmo=')

#print translator.translate('你好'.decode('utf8'), 'en', 'zh-CHT')

(chinese_sentences, english_sentences) = read_all_the_files()
of = open('bing_translations.txt', 'w')
for chinese_sent in chinese_sentences:
    chinese_sent = ''.join([x for x in chinese_sent if x != ' '])
    print >> of, chinese_sent
    print >> of, translator.translate(chinese_sent.decode('utf8'), 'en',
                                      'zh-CHT').encode('utf-8')
    print >> of, '=========='
Beispiel #43
0
            newString = temp

            openners = []
            closers = []

            # Find all strings
            for x in range(len(temp)):
                if temp[x] == '>':
                    openners.append(x+1)
                elif temp[x] == '<':
                    closers.append(x)

            # Convert language
            for x in range(len(openners)-1):
                if(len(temp[openners[x]:closers[x+1]].strip())>0):
                    translatedText = translator.translate(temp[openners[x]:closers[x+1]], SPANISH)
                    print (temp[openners[x]:closers[x+1]] + " <> " + translatedText)
                    newString = newString.replace(temp[openners[x]:closers[x+1]], translatedText)
            

            remove_from_zip("%s/%s.odp" % (sys.argv[1],os.path.splitext(name)[0]), 'content.xml')
            with zipfile.ZipFile("%s/%s.odp" % (sys.argv[1],os.path.splitext(name)[0]), 'a') as z:
                z.writestr('content.xml',newString)

    except DocumentConversionException as exception:
        print("ERROR! " + str(exception))
        exit(1)
    except ErrorCodeIOException as exception:
        print("ERROR! ErrorCodeIOException %d" % exception.ErrCode)
        exit(1)
Beispiel #44
0
from microsofttranslator import Translator
import csv

t = Translator("WWEB","ml7-win-wilson-eric-bernie")
#            ClientID,Client Secret

words = open("words.csv").readlines()
words = [ word.strip() for word in words ]
with open("engToSpan.csv","w") as csvfile:
    writer = csv.writer(csvfile, delimiter="\n")
    for w in words:
        try:
            writer.writerow( [w + "," + t.translate(w,"es")
                              .encode("utf-8")] )
        except:
            pass
Beispiel #45
0
def translate(tag, language):
    """ returns lower-case tag translated into language """
    translator = Translator(MS_CLIENT_ID, MS_SECRET_KEY)
    return translator.translate(tag, language).lower()
Beispiel #46
0
 def translate(self, query, to):
     translator = Translator(self.translator_id,self.translator_key)
     return translator.translate(query, to)
Beispiel #47
0
 def test_translate(self):
     client = Translator(client_id, client_secret, debug=True)
     self.assertEqual(client.translate("hello", "pt"), u'Ol\xe1')
Beispiel #48
0
class Mangle:
    def __init__(self, client_id, client_secret, language, low, high,
                 language_blacklist):
        self.language = language
        self.translator = Translator(client_id, client_secret)
        self.languages = set(
            self.translator.get_languages()) - language_blacklist
        self.low = low
        self.high = high

    def mangle(self, message_text, times=0, method=None, language_list=None):

        if method == MangleMethod.manual and not language_list:
            raise ValueError("No language list given.")
        if method is None:
            method = random.sample(
                set(MangleMethod) - set([MangleMethod.manual]), 1)[0]
        if times < 0:
            raise ValueError("Parameter times must be greater than 0.")
        if times == 0:
            times = random.randint(self.low, self.high)

        if method == MangleMethod.manual:
            language_list.insert(0, self.language)
            language_list.append(self.language)
        elif method == MangleMethod.flipflop:
            language_list = []
            language_list.append(self.language)
            for i in range(int(times / 2)):
                language_list.extend(
                    [random.sample(self.languages, 1)[0], self.language])
        elif method == MangleMethod.straight:
            language_list = []
            language_list.append(self.language)
            language_list.extend(random.sample(self.languages, times))
            language_list.append(self.language)
        else:
            raise NotImplementedError(
                "MangleMethod {} not implemented.".format(method))

        all_messages = [message_text]
        for i in range(len(language_list)):
            if i == 0:
                continue
            try:
                text = self.translator.translate(all_messages[i - 1],
                                                 from_lang=language_list[i -
                                                                         1],
                                                 to_lang=language_list[i])
                all_messages.append(text)
            except Exception as e:
                all_messages = False
                break

        message_info = {
            'method': str(method),
            'languages': language_list,
            'all_messages': all_messages
        }

        return message_info
Beispiel #49
0
 def test_invalid_client_id(self):
     client = Translator("foo", "bar")
     with self.assertRaises(TranslateApiException):
         client.translate("hello", "pt")
Beispiel #50
0
from microsofttranslator import Translator
import csv

t = Translator("WWEB", "ml7-win-wilson-eric-bernie")
#            ClientID,Client Secret

words = open("words.csv").readlines()
words = [word.strip() for word in words]
with open("engToSpan.csv", "w") as csvfile:
    writer = csv.writer(csvfile, delimiter="\n")
    for w in words:
        try:
            writer.writerow([w + "," + t.translate(w, "es").encode("utf-8")])
        except:
            pass
Beispiel #51
0
class Translator:
    def __init__(self, developerKey='AIzaSyD-S4_2g1SRp4jucHpdLSBBq6xWhOsHcSI'):
        self.googleAPI = build('translate', 'v2',
                                developerKey=developerKey)
        self.yandexAPI = YandexTranslate('trnsl.1.1.20160423T052231Z.a28f67a8074f04f8.0a0282fad14a1dfd13d21ed6ab55f0a0a61c2d3f')
        self.bingAPI = Bing_Translator('welcome_ciceron', 'VL9isREJUILWMCLE2hr75xVaePRof6kuGkCM+r9oTb0=')
        self.ciceronAPI = "http://221.142.31.56:{port}/translator/translate"

    def _googleTranslate(self, source_lang, target_lang, sentences):
        if (source_lang == 'ko' and target_lang == 'en') or \
           (source_lang == 'en' and target_lang == 'ko'):
            result_google_jp = self.googleAPI.translations().list(
                                                    source=source_lang,
                                                    target='ja',
                                                         q=sentences
                    ).execute()
            if result_google_jp.get('translations') != None:
                inter_text = result_google_jp['translations'][0]['translatedText']
            else:
                return False

            result_google = self.googleAPI.translations().list(
                                                    source='ja',
                                                    target=target_lang,
                                                         q=inter_text
                    ).execute()
            if result_google.get('translations') != None:
                result_text = result_google['translations'][0]['translatedText']
                return result_text
            else:
                return False

        else:
            result_google = self.googleAPI.translations().list(
                                                    source=source_lang,
                                                    target=target_lang,
                                                         q=sentences
                    ).execute()
            if result_google.get('translations') != None:
                result_text = result_google['translations'][0]['translatedText']
                return result_text
            else:
                return None

    def _ciceronTranslate(self, source_lang, target_lang, sentences):
        headers = {'content-type': 'application/json'}
        payload = {'src': sentences}
        if source_lang == 'en' and target_lang == 'ko':
            response = requests.post(self.ciceronAPI.format(port=7700), data=json.dumps(payload), headers=headers)
        elif source_lang == 'ko' and target_lang == 'en':
            response = requests.post(self.ciceronAPI.format(port=7710), data=json.dumps(payload), headers=headers)
        else:
            return None

        data = response.json()
        return data[0][0]['tgt']

    def _bingTranslate(self, source_lang, target_lang, sentences):
        try:
            result_bing = self.bingAPI.translate(sentences, target_lang)
            return result_bing
        except Exception:
            traceback.print_exc()
            return None

    def _yandexTranslate(self, source_lang, target_lang, sentences):
        lang_FromTo = '%s-%s' % (source_lang, target_lang)
        result_yandex = self.yandexAPI.translate(sentences, lang_FromTo)
        if result_yandex.get('text') != None:
            return result_yandex['text'][0]
        else:
            return None

    def getCountryCode(self, country_id):
        if os.environ.get('PURPOSE') == 'PROD':
            DATABASE = "host=ciceronprod.cng6yzqtxqhh.ap-northeast-1.rds.amazonaws.com port=5432 dbname=ciceron user=ciceron_web password=noSecret01!"
        else:
            DATABASE = "host=aristoteles.ciceron.xyz port=5432 dbname=ciceron user=ciceron_web password=noSecret01!"

        conn = psycopg2.connect(DATABASE)
        cursor = conn.cursor()

        query = """SELECT google_code, yandex_code, bing_code FROM CICERON.D_LANGUAGES
                      WHERE id = %s """
        cursor.execute(query, (country_id, ))
        res = cursor.fetchone()
        if res is None or len(res) == 0:
            return False, None

        return True, {'google': res[0], 'yandex': res[1], 'bing': res[2]}

    def doWork(self, source_lang_id, target_lang_id, sentences):
        if len(sentences) > 1000:
            result_text = "한 문장에 1000글자가 넘어가면 초벌 번역이 불가능합니다. / It is imposiible to initial-translate if the length of the sentence is over 1000 characters."
            return True, {'google': result_text, 'bing': result_text, 'yandex': result_text}

        is_sourceId_OK, source_langCodeDict = self.getCountryCode(source_lang_id)
        is_targetId_OK, target_langCodeDict = self.getCountryCode(target_lang_id)

        if is_sourceId_OK == False or is_targetId_OK == False:
            fail_translation = "초벌 번역 처리가 불가능한 언어입니다. / Unsupported language."
            return False, {'google': fail_translation, 'bing': fail_translation, 'yandex': fail_translation}

        try:
            result_google = self._googleTranslate(source_langCodeDict['google'], target_langCodeDict['google'], sentences)
        except Exception:
            traceback.print_exc()
            result_google = "초벌번역 처리가 불가능한 문자가 삽입되었습니다. / Unsupported character is contained in the sentence."

        try:
            result_bing = self._bingTranslate(source_langCodeDict['bing'], target_langCodeDict['bing'], sentences)
        except Exception:
            traceback.print_exc()
            result_bing = "초벌번역 처리가 불가능한 문자가 삽입되었습니다. / Unsupported character is contained in the sentence."

        try:
            result_yandex = self._yandexTranslate(source_langCodeDict['yandex'], target_langCodeDict['yandex'], sentences)
        except Exception:
            traceback.print_exc()
            result_yandex = "초벌번역 처리가 불가능한 문자가 삽입되었습니다. / Unsupported character is contained in the sentence."

        try:
            result_ciceron = self._ciceronTranslate(source_langCodeDict['google'], target_langCodeDict['google'], sentences)
        except Exception:
            traceback.print_exc()
            result_yandex = "초벌번역 처리가 불가능한 문자가 삽입되었습니다. / Unsupported character is contained in the sentence."

        return True, {'google': result_google, 'bing': result_bing, 'yandex': result_yandex, 'ciceron': result_ciceron}
Beispiel #52
0
# -*- coding: utf-8 -*-
from microsofttranslator import Translator
# translator = Translator('skeven', 'vizaHdZEjZkP0ZdL/B3CQ0UO9yzsgmTT2hDtuvJFdL0=')
# translator = Translator('shosekine', '2GFvzrRkechE3izlMfvRHRs+0y9VEcwpMUvVJhkPVOM=')
# translator = Translator('soutasekine', 'Tk8KK3j2+W4f6v/n1lgXeLwsbZHVUdTnZLu3L++XNQI=')
# translator = Translator('naosekine', 'M04ecskst3RZtaLpLZK4EbOG836TQf6r0IX7rmo5XKg=')
# translator = Translator('takikosekine', 'zjTibYqktK1UpZd2bepNVLflJlVCcSxjrtrmFJNwCWY=')
translator = Translator('ssekine', 'J27sphE2O9LiOcyTEya0ZDeesIpKjfDYIges9t5bFGY=')
# print translator.translate(u"明日天気だったら散歩に行く予定だよ", "zh-CHS")
print translator.translate(u"我打算去散步,如果它是明天天气", "ja")

Beispiel #53
0
	tocon = sqlite3.connect("wordBank_ita_eng.db")
	tocur = tocon.cursor()
	try:
		tocur.execute("""CREATE TABLE wordTable(from_language text, from_word text, count integer, to_language text, to_word text);""")
	except Exception, e:
		print 'Target Table already exist'
		pass

	cur.execute("SELECT from_word, count FROM wordTable")
	for d in cur.fetchall():

		from_word = d[0]
		isNew = isNewWord(from_word,tocur)
		if isNew == True:
			to_word = translator.translate(from_word, 'en')
			from_language = 'it'
			to_language = 'en'
			count = d[1]
			insertwordline = (from_language, from_word, count, to_language, to_word)

			tocur.execute("INSERT INTO wordTable(from_language, from_word, count, to_language, to_word) VALUES (?, ?, ?, ?, ?)", insertwordline)
			tocon.commit()
			print insertwordline
			time.sleep(random.random())
		else:
			print 'ALREADY EXIST'

	tocon.close()
	con.close()
if __name__ == '__main__':
#!/usr/bin/env python
# -*- coding: utf-8 -*-

from microsofttranslator import Translator
# if this fails, do:
# sudo easy_install microsofttranslator

from ref_definitions2 import read_all_the_files

translator = Translator('finalproj', 'LZTVKNyxQEjmIUbMWp1HhkN4x9XkIbnT6fHhaJfLFmo=')

#print translator.translate('你好'.decode('utf8'), 'en', 'zh-CHT')

(chinese_sentences,english_sentences) = read_all_the_files()
of = open('bing_translations.txt', 'w')
for chinese_sent in chinese_sentences:
  chinese_sent = ''.join([x for x in chinese_sent if x != ' '])
  print >> of, chinese_sent
  print >> of, translator.translate(chinese_sent.decode('utf8'), 'en', 'zh-CHT').encode('utf-8')
  print >> of, '=========='

Beispiel #55
0
def processRequest(req):
    #for wolfram alpha
    if req.get("result").get("action") == "fact":
        client = wolframalpha.Client("4393W5-W6E838H957")
        john = client.query(req.get("result").get("resolvedQuery"))
        answer = next(john.results).text
        return {
            "speech": answer,
            "displayText": answer,
            "source": "From wolfram_alpha"
        }

    #translator
    #uses microsoft translator api USE your key here
    elif req.get("result").get("action") == "tran":
        translator = Translator(
            '''jkthaha''', '''syosNIlEOJnlLByQGcMS+AIin0iaNERaQVltQvJS6Jg=''')
        try:
            s = translator.translate(
                req.get("result").get("parameters").get("question"),
                req.get("result").get("parameters").get("language"))
            res = makeWebhookResult(s)
            return res
        except:
            res = makeWebhookResult("Server busy, please try again later")
            return res

    #for news
    #takes news randomly from different sources use newsapi docs for more info
    elif req.get("result").get("action") == "news":
        y = random.randint(1, 6)
        if y == 1:
            r = requests.get(
                'https://newsapi.org/v1/articles?source=bbc-news&sortBy=top&apiKey=1412588264c447da83a7c75f1749d6e8'
            )
            j = r.json()
            x = j.get('articles')
            newp = "The headlines are: " + "1. " + x[0][
                "title"] + "." + " 2. " + x[1]["title"] + "." + " 3. " + x[2][
                    "title"] + "." + " 4. " + x[3]["title"] + "." + " 5. " + x[
                        4]["title"] + "."
            res = makeWebhookResult(newp)
            return res

        elif y == 2:
            r = requests.get(
                'https://newsapi.org/v1/articles?source=the-times-of-india&sortBy=latest&apiKey=1412588264c447da83a7c75f1749d6e8'
            )
            j = r.json()
            x = j.get('articles')
            newp = "The headlines are: " + "1. " + x[0][
                "title"] + "." + " 2. " + x[1]["title"] + "." + " 3. " + x[2][
                    "title"] + "." + " 4. " + x[3]["title"] + "." + " 5. " + x[
                        4]["title"] + "."
            res = makeWebhookResult(newp)
            return res

        elif y == 3:
            r = requests.get(
                'https://newsapi.org/v1/articles?source=independent&sortBy=top&apiKey=1412588264c447da83a7c75f1749d6e8'
            )
            j = r.json()
            x = j.get('articles')
            newp = "The headlines are: " + "1. " + x[0][
                "title"] + "." + " 2. " + x[1]["title"] + "." + " 3. " + x[2][
                    "title"] + "." + " 4. " + x[3]["title"] + "." + " 5. " + x[
                        4]["title"] + "."
            res = makeWebhookResult(newp)
            return res

        elif y == 4:
            r = requests.get(
                'https://newsapi.org/v1/articles?source=bbc-sport&sortBy=top&apiKey=1412588264c447da83a7c75f1749d6e8'
            )
            j = r.json()
            x = j.get('articles')
            newp = "The headlines from bbc sports: " + "1. " + x[0][
                "title"] + "." + " 2. " + x[1]["title"] + "." + " 3. " + x[2][
                    "title"] + "." + " 4. " + x[3]["title"] + "." + " 5. " + x[
                        4]["title"] + "."
            res = makeWebhookResult(newp)
            return res

        elif y == 5:
            r = requests.get(
                'https://newsapi.org/v1/articles?source=ars-technica&sortBy=latest&apiKey=1412588264c447da83a7c75f1749d6e8'
            )
            j = r.json()
            x = j.get('articles')
            newp = "The headlines are: " + "1. " + x[0][
                "title"] + "." + " 2. " + x[1]["title"] + "." + " 3. " + x[2][
                    "title"] + "." + " 4. " + x[3]["title"] + "." + " 5. " + x[
                        4]["title"] + "."
            res = makeWebhookResult(newp)
            return res

        elif y == 6:
            r = requests.get(
                'https://newsapi.org/v1/articles?source=the-hindu&sortBy=latest&apiKey=1412588264c447da83a7c75f1749d6e8'
            )
            j = r.json()
            x = j.get('articles')
            newp = "The headlines are: " + "1. " + x[0][
                "title"] + "." + " 2. " + x[1]["title"] + "." + " 3. " + x[2][
                    "title"] + "." + " 4. " + x[3]["title"] + "." + " 5. " + x[
                        4]["title"] + "."
            res = makeWebhookResult(newp)
            return res

    #for wikipedia
    elif req.get("result").get("action") == "wiki":
        param = req.get("result").get("parameters").get("any")
        fin = wikipedia.summary(param, sentences=2)
        res = makeWebhookResult(fin)
        return res

    #for local time
    elif req.get("result").get("action") == "time":
        app_id = "4393W5-W6E838H957"
        client = wolframalpha.Client(app_id)
        john = client.query("time in bangalore")
        answer = next(john.results).text
        res = makeWebhookResult(answer)
        return res

    #for weather (yahoo api)
    elif req.get("result").get("action") == "yahooWeatherForecast":
        baseurl = "https://query.yahooapis.com/v1/public/yql?"
        yql_query = makeYqlQuery(req)
        if yql_query is None:
            return {}
        yql_url = baseurl + urllib.urlencode({'q': yql_query}) + "&format=json"
        result = urllib.urlopen(yql_url).read()
        data = json.loads(result)
        res = makeWebhookResult1(data)
        return res

    #for dictionary
    else:
        dictionary = PyDictionary()
        ch = req.get('result').get('parameters').get('word')
        test = req.get('result').get('parameters').get('dictionary')
        if test == 'antonym':
            res = dictionary.antonym(ch)
            try:
                try:
                    answer = "Antonym for the word " + ch + " are: {0}, {1}, {2}, {3}, {4}.".format(
                        res[0], res[1], res[2], res[3], res[4])
                except:
                    try:
                        answer = "Antonym for the word " + ch + " are: {0}, {1}, {2}, {3}.".format(
                            res[0], res[1], res[2], res[3])
                    except:
                        try:
                            answer = "Antonym for the word " + ch + " are: {0}, {1}, {2}.".format(
                                res[0], res[1], res[2])

                        except:
                            answer = "Antonym for the word " + ch + " are: {0}, {1}.".format(
                                res[0], res[1])

            except:
                answer = "There is no antonym for this word"
            return makeWebhookResult(answer)

        elif test == 'definition':
            re1s = dictionary.meaning(ch)
            try:
                try:
                    answer = "The word {0} is a verb and its meaning is {1}".format(
                        ch, re1s['Verb'])
                except:
                    try:
                        answer = "The word {0} is a noun and its meaning is {1}".format(
                            ch, re1s['Noun'])
                    except:
                        answer = "The word {0} is an adjective and its meaning is {1}".format(
                            ch, re1s['Adjective'])
            except:
                answer = re1s
            return makeWebhookResult(answer)

        elif test == 'synonym':
            res = dictionary.synonym(ch)
            try:
                try:
                    answer = "Synonym for the word " + ch + " are: {0}, {1}, {2}, {3}, {4}.".format(
                        res[0], res[1], res[2], res[3], res[4])
                except:
                    try:
                        answer = "Synonym for the word " + ch + " are: {0}, {1}, {2}, {3}.".format(
                            res[0], res[1], res[2], res[3])
                    except:
                        try:
                            answer = "Synonym for the word " + ch + " are: {0}, {1}, {2}.".format(
                                res[0], res[1], res[2])
                        except:
                            answer = "Synonym for the word " + ch + " are: {0}, {1}.".format(
                                res[0], res[1])
                return makeWebhookResult(answer)
            except:
                answer = "There is no Synonym for this word"
                return makeWebhookResult(answer)
Beispiel #56
0
# クライアントIDに書いた文字列
clientId = 'project_china'
# 顧客の秘密に書かれていた文字列
clientSecret = 'vmefZLSAQKA7gt7fFzg5UApBBOwTGZhJXq9+Ab958YY='

from microsofttranslator import Translator
translator = Translator(clientId, clientSecret)

retrip1 = "いつか全て巡ってみたい!日本のSNS映えスポットランキングTOP10"
retrip2 = "食も雑貨も揃うオススメスポット!“学芸大学”にあるオシャレなお店15選"
retrip3 = "ここはエビ好きの天国!エビだらけのお店「ババガンプ・シュリンプ」とは"

#一天周圍都喜歡 ! 日本 SNS 光澤現貨排名 TOP10
print(translator.translate(text=retrip1, to_lang='zh-TW', from_lang='ja'))
#ある日の周りのような!日本のSNS光沢のあるスポットランキングTOP10

#推薦點食物和雜物是可用 ! 時尚商店 15 選舉是"學藝大學"
print(translator.translate(text=retrip2, to_lang='zh-TW', from_lang='ja'))
#いくつかの食品や雑貨が用意されていおすすめ!ファッションショップ15選挙は「学芸大学」でした

#這是一個像蝦一樣的天堂 ! 布巴阿甘蝦蝦沾滿了商店
print(translator.translate(text=retrip3, to_lang='zh-TW', from_lang='ja'))
#これはエビのような楽園です!ババ・ガンプ・シュリンプシュリンプ覆わ店
	try:
		tocur.execute("""CREATE TABLE wordTable(from_language text, from_word text, count integer, to_language text, to_word text);""")
	except Exception, e:
		print 'Target Table already exist'
		pass
	argvs = sys.argv
	# headword = "a"
	headword = argvs[1]
	cur.execute("SELECT from_word, count FROM wordTable WHERE from_word like \'" + headword + "%\'")
	for d in cur.fetchall():
		# print d[0]
		try:
			from_word = d[0]
			isNew = isNewWord(from_word,tocur)
			if isNew == True:
				to_word = translator.translate(from_word, 'zh-CHS')
				from_language = 'eng'
				to_language = 'zh-CHS'
				count = d[1]
				insertwordline = (from_language, from_word, count, to_language, to_word)

				tocur.execute("INSERT INTO wordTable(from_language, from_word, count, to_language, to_word) VALUES (?, ?, ?, ?, ?)", insertwordline)
				tocon.commit()
				print insertwordline
				time.sleep(random.random())
			else:
				print 'ALREADY EXIST'
		except Exception, e:
			print traceback.format_exc()
			pass
Beispiel #58
0

#pdfFile = urlopen("http://pythonscraping.com/pages/warandpeace/chapter1.pdf");

pdfFile = open(
    "/Users/yanchunyang/Documents/kidscode/ScratchReferenceGuide.pdf", 'rb')
outputString = readPDF(pdfFile)
pdfFile.close()

#local file
#pdfFile = open("../pages/warandpeace/chapter1.pdf", 'rb')

#translate the pdf
print("read over")
client_id = "boliu"
client_secret = "pwfbBe660uJoi0yQrfyCurzfhoXYsNRkXhmaocNKInY="
translator = Translator(client_id, client_secret)

outputlist = outputString.split('\n')

fname = open("Reference.txt", 'w+')

for line in outputlist:
    if len(line) > 10:
        try:
            translate_text = translator.translate(line, 'zh-CHS', 'en')
            fname.write(translate_text + '\n')
        except:
            print("error")
fname.close()
Beispiel #59
0
def translate(text="", source="auto", target="en"):
	t = Translator("twblue", "4KZA26GYIfmVAqQA/z16Hlucbg64hVSDTIpRjT2FqIU=")
	return t.translate(text, target)