Ejemplo n.º 1
0
def test_main_exception():
    sentence = '&^%$%^'

    with pytest.raises(ValueError) as exception:
        translator(sentence=sentence)

    assert sentence in str(exception.value)
Ejemplo n.º 2
0
def main():
    mybot = aiml.Kernel()
    mybot.learn("std-startup.xml")
    mybot.respond('load aiml b')

    print("\n-----------------------------------------\n")
    while True:
        mes = input(">>> ")
        if mes == "q"or mes == "quit":
            break
        else:
            # print(mes)
            mes = translator.translator(mes, fromLang="ch", toLang="en")
            # print("[ ", mes, " ]")
            get = mybot.respond(mes)
            get = translator.translator(get)
            print("bot: ", get)
Ejemplo n.º 3
0
def post():
    sentence = request.form['input']
    langCode = detector.detector(sentence)
    if (langCode != "ko"):
        trans_result = translator.translator(sentence)
        max_out, result, sorted_result = get_prediction(trans_result)
    else:
        max_out, result, sorted_result = get_prediction(sentence)

    obj['prediction'] = {'emotion': max_out, 'data': result}

    return obj
Ejemplo n.º 4
0
 def dealMessage(self):
     Msg = self.edit.toPlainText()
     self.edit.clear()
     message = messageW(Msg, 'user')
     item = QListWidgetItem(self.list)
     message.setFixedWidth(self.width() - 25)
     item.setSizeHint(message.fontRect())
     self.list.setItemWidget(item, message)
     self.list.scrollToBottom()
     Msg = translator.translator(Msg, fromLang="ch", toLang="en")
     # print("[ ", mes, " ]")
     get = self.mybot.respond(Msg)
     get = translator.translator(get)
     # print("bot: ", get)
     returnMsg = get
     message = messageW(returnMsg, 'helper')
     item = QListWidgetItem(self.list)
     message.setFixedWidth(self.width() - 25)
     item.setSizeHint(message.fontRect())
     self.list.setItemWidget(item, message)
     self.list.scrollToBottom()
def post():
    sentence = request.form['input']
    logging.info(sentence)
    trans_result = translator.translator(sentence)
    logging.info(trans_result)
    max_out, result, sorted_result = get_prediction(trans_result)
    obj['prediction'] = {
        'sentence': sentence,
        'emotion': max_out,
        'data': result
    }

    return obj
Ejemplo n.º 6
0
def api_translate():

    if 'text' in request.args:
        text = request.args['text']
    else:
        return "Error: No text field provided. Please specify a text to translate."

    # Here we call the translation service
    results = []
    t = translator()
    results.append(t.translate_text(text))

    return jsonify(results)
def on_message(ws, message):
    # print(message)
    message = json.loads(message)

    if 'type' not in message.keys() or message['type'] != 'message':
        return
    if translator_check(message['text']):
        res = {
            'channel': message['channel'],
            'type': 'message',
            'text': t.translator(message['text'])
        }
        ws.send(json.dumps(res))
Ejemplo n.º 8
0
def planet(bot, update, args):
    try:
        planet_name = translator(args[0].capitalize())
        try:
            today = datetime.now(tz=None).strftime('%Y/%m/%d')
            # planet = eval("ephem." + st)(today)
            planet = getattr(ephem, planet_name)(today)
            return update.message.reply_text(ephem.constellation(planet))

        except AttributeError:
            return update.message.reply_text("Нет такой планеты")

    except (IndexError, ValueError):
        update.message.reply_text("Введите название планты после /planet")
Ejemplo n.º 9
0
def traductor(path_to_pdf):

    lop = extractor.extractor(path_to_pdf)[1]

    idx = 0
    str_var = ''

    for p in lop:

        #print(p)

        fails = 0
        vc = True

        while vc:
            try:

                pt = translator.translator(p)
                print(pt)

                if pt is not None:

                    str_var += pt + '\n'
                    vc = False

            except ConnectError as e:

                if fails < 3:

                    time.sleep(5)
                    print('sleeping a moment')

                else:

                    vc = False
                    str_var += '%s not posible to trans' % idx
        idx += 1
        time.sleep(1)

    return str_var
Ejemplo n.º 10
0
def main():
    event_handler = view()
    trans = translator()
    announcer = voice()
    mode = 'eng'
    button_init(event_handler)  # start button thread

    while True:
        voc_event = event_handler.voice_flag
        cap_event = event_handler.capture_flag
        ret_val, cam_img = event_handler.handle_capture()
        event_handler.show_img(cam_img)  # show image for testing

        if voc_event:
            # cap_img = event_handler.handle_voice()
            cap_img = cam_img
            # cap_img = cv2.imread('./test/img/test1-eng.jpg')
            # cv2.imshow('gray', cap_img)
            # cv2.waitKey(0)
            paragraph_list, is_eng = preprocess_img(cap_img, mode=mode)

            # if is_eng:
            #     paragraph_list = trans.translate(paragraph_list, 'ko')
            paragraph_list = paragraph_list.split('\n')
            print(paragraph_list)

            ptr_voice = announcer.store_voice(paragraph_list)  # default en

            success = event_handler.print_voice(ptr_voice)

            if not success:
                event_handler.print_error()

            event_handler.set_voice_flag = False

        if cap_event:
            event_handler.handle_capture()

        time.sleep(1)
Ejemplo n.º 11
0
    def do_GET(self):
        self.send_response(200)
        parse_result = urlparse.urlparse(self.path)
        print threading.currentThread().getName()
        queries = []
        query = urlparse.parse_qs(parse_result.query)
        # Checks the type of document request using content-type
        if self.headers.getheader('content-type') == 'application/json':
            if 'question' in query:
                self.send_header("Content-type", "application/json")
                self.end_headers()
                # try:
                start = time.time()
                translator_obj = translator()
                queries = translator_obj.queryFromQuestion(
                    query['question'][0])
                running_time = time.time() - start
                if (len(translator_obj.ambiguities['data']) > 0):
                    request_id = self.get_request_id()
                    translator_obj.ambiguities['id'] = request_id
                    result = json.dumps(translator_obj.ambiguities)
                    self.wfile.write(result)
                    self.write_into_DB(request_id, query['question'][0],
                                       translator_obj.ambiguities, queries,
                                       running_time)
                else:
                    request_id = self.get_request_id()
                    self.wfile.write(json.dumps({
                        'type': 'answer',
                        'data': []
                    }))
                    self.write_into_DB(request_id, query['question'][0],
                                       translator_obj.ambiguities, queries,
                                       running_time)
                    start = time.time()
                    sql_query = translator_obj.return_sql_query(queries)
                    self.write_into_DB_part2(request_id, "None", queries[0],
                                             str(sql_query['query']),
                                             time.time() - start)
                '''
                except Exception as e:
                    queries = json.dumps({"error": e.message})
                '''
                if (len(queries) > 100):
                    self.wfile.write(queries)

            elif 'user_response' in query:
                translator_obj = translator()
                options = query['user_response'][0].split('$')
                request_id = options[len(options) - 1]
                del options[len(options) - 1]
                post_p_data, ambiguities = self.get_info_from_DB(request_id)
                options = map(int, options)
                tot = []
                for i in range(len(ambiguities['data'])):
                    tot.append(len(ambiguities['data'][i]['options']))
                tot.append(1)
                locate_option = 0
                for i in range(len(options)):
                    mul_factor = 1
                    for j in range(i + 1, len(tot), 1):
                        mul_factor *= tot[j]
                    locate_option += mul_factor * options[i]

                start = time.time()
                sql_query = translator_obj.return_sql_query(
                    post_p_data[locate_option])
                self.write_into_DB_part2(request_id, str(options),
                                         post_p_data[locate_option],
                                         str(sql_query['query']),
                                         time.time() - start)
                # print translator_obj.ambi_phrases['data'][locate_option]
                self.send_header("Content-type", "application/json")
                self.end_headers()
                self.wfile.write(json.dumps({'type': 'answer', 'data': []}))

        else:
            if (self.path.endswith('.log')):
                self.send_header("Content-type", "text/text")
                self.end_headers()
                for line in reversed(open(self.path).readlines()):
                    self.wfile.write(line.rstrip() + "\n")

            elif (self.path.endswith('.js')):
                self.send_header('Content-type', 'text/javascript')
                self.end_headers()
                f = open(os.getcwd() + '/scripts.js', 'r')
                self.wfile.write(f.read())
                f.close()

            else:
                self.send_header("Content-type", "text/html")
                self.end_headers()
                dash = open(os.getcwd() + '/index.html', 'r')
                self.wfile.write(dash.read())
                dash.close()
Ejemplo n.º 12
0
# -*- coding: utf-8 -*-
from translator import translator
import urllib2
from xml.dom.minidom import parseString
import sys
reload(sys)
sys.setdefaultencoding("utf-8")

fp = open("FIRE-2011-G/gu.bn.g.topics.126-175.2011.txt", "r");
data = fp.read();
fp.close();

FromLang = "english"
ToLang = "gujarati"

dom = parseString(data);
tags = ["num","title","desc","narr"]

for i in xrange(50):
  print "<top>"
  for j in range(len(tags)-1):
      tag = dom.getElementsByTagName(tags[j])[i].toxml()
      data = tag.replace('<'+tags[j]+'>','').replace('</'+tags[j]+'>','')
      print '<'+tags[j]+'>',
      print translator().fromHtml(data, FromLang, ToLang),
      print "</"+tags[j]+">"
  print "</top>"
  print

Ejemplo n.º 13
0
def application():
    import translator

    try:
        ctype = 'text/html; charset="utf8"'
        response_body = ""
        # word = parse_qs(environ['QUERY_STRING']).get('word', [''])[0]

        word_in_farsi = request.args.get('word')

        # word_in_farsi = "I want to go."
        word = bingTranslator.translate(word_in_farsi, "fa")
        # import ipdb;ipdb.set_trace()

        if word == "":
            word = u"vazhe".encode("utf8")
        text = worddb(word)
        if text != None:
            response_body = text
        else:
            # if environ['PATH_INFO'] == '/health':
            #     response_body = "1"
            # elif environ['PATH_INFO'] == '/env':
            #     response_body = ['%s: %s' % (key, value)
            #                      for key, value in sorted(environ.items())]
            #     response_body = '\n'.join(response_body)
            # else:
            # word = word.decode('u8')
            ctype = 'text/html; charset="utf8"'
            import requests

            xword = word.replace(u'+', u' ')
            for word in xword.split(u' '):
                reload(translator)
                tr = translator.translator()
                result = ''
                pron = word
                try:
                    text = requests.get(
                        'http://www.loghatnaameh.org/dehkhodasearchresult-fa.html?searchtype=2&word='
                        + word,
                        timeout=2).text
                    pText = text.find(u'href=\'dehkhodaworddetail')
                    foundPText = 1
                    p = ''
                    while (pText > 0):
                        p = text[pText + 85:pText + 228]
                        pText = text.find(u'href=\'dehkhodaworddetail',
                                          pText + 1)
                        foundPText = foundPText + 1
                        if foundPText < 5 and re.search(
                                word + u'\s*\.\s*\[',
                                p) is not None and re.search(
                                    u'\[ *(.*) *\]', p) is not None:
                            pron = re.search(u'\[ *(.*) *\]',
                                             p).group(1).split(u' / ')
                            break
                    # make working for last t arabic
                    if word[-1] == u'\u0647' and pText < 0:
                        word = word.replace(u'\u0647', u'\u0629')
                        pText = text.find(u'href=\'dehkhodaworddetail')
                        foundPText = 1
                        p = ''
                        while (pText > 0):
                            p = text[pText + 85:pText + 228]
                            pText = text.find(u'href=\'dehkhodaworddetail',
                                              pText + 1)
                            foundPText = foundPText + 1
                            if foundPText < 5 and re.search(
                                    word + u'\s*\.\s*\[',
                                    p) is not None and re.search(
                                        u'\[ *(.*) *\]', p) is not None:
                                pron = re.search(u'\[ *(.*) *\]',
                                                 p).group(1).split(u' / ')
                                break
                        word = word.replace(u'\u0629', u'\u0647')
                    preI = ''
                    if type(pron) is list:
                        for i in pron:
                            i = i.replace(u' ', '')
                            j = 0
                            k = 0
                            while j < len(i):
                                if j > 0 and j % 2 == 0:
                                    i = i[:k] + u' ' + i[k:]
                                    k = k + 1
                                j = j + 1
                                k = k + 1
                            pattern = i.replace(u'\u0650', u'.')
                            pattern = pattern.replace(u'\u064e', u'.')
                            pattern = pattern.replace(u'\u064f', u'.')
                            if re.search(pattern, preI) is not None:
                                i = re.sub(pattern, i, preI)
                            preI = i
                            i = re.sub(u'.ا', '', i)
                            i = re.sub(u'.و', '', i)
                            #	i = re.sub(u'.ی', '', i)
                            i = i.replace(u'  ', u' ')
                            resultTmp = googleSuggest(
                                tr.trf2f(i.encode('u8'), word.encode('u8')))
                            worddb(word.encode('u8'), resultTmp.encode('u8'))
                            if False and ren(pron) > 1:
                                result = result + resultTmp + '/'
                            else:
                                result = resultTmp
                    else:
                        result = googleSuggest(
                            tr.trf2f(pron.encode('u8'), word.encode('u8')))
                        worddb(word.encode('u8'), result.encode('u8'))
                except:
                    text = requests.get('http://fa.wiktionary.org/wiki/' +
                                        word,
                                        timeout=2).text
                    from bs4 import BeautifulSoup

                    soup = BeautifulSoup(text)
                    for p in soup.findAll("p"):
                        if p.parent.name == "div":
                            if re.search("\(.*\)", p.encode("utf8")) != None:
                                pron = str(p)
                                break
                    #if 'p' in locals() and re.search("\(.*\)",p.encode("utf8")) != None:
                    if pron != word:
                        result = googleSuggest(
                            tr.trf2f(pron, word.encode('u8')))
                    else:
                        pron = u"<p>(" + word + u")</p>"
                        result = googleSuggest(
                            tr.trf2f(pron.encode('u8'), word.encode('u8')))
                    worddb(word.encode('u8'), result.encode('u8'))

                response_body = response_body + ' ' + result

                # response_body = response_body

        # response_body = response_body.encode('u8')
        # status = '200 OK'
        # response_headers = [('Content-Type', ctype), ('Content-Length', str(len(response_body)))]
        # start_response(status, response_headers)
        # return [response_body]
        return response_body
    except:
        status = '500 Internal Server Error'
        import traceback
        #
        # response_body = response_body + "<br/>\n" + traceback.format_exc()
        # response_headers = [('Content-Type', ctype), ('Content-Length', str(len(response_body)))]
        # start_response(status, response_headers)
        # return [response_body]

        return traceback.format_exc()
Ejemplo n.º 14
0
Archivo: main.py Proyecto: bongtrop/SMC
import alu
import translator
import reportor

# Check Input Argument
if len(sys.argv)!=2:
  print "[-] Usage: python " + sys.argv[0] + " [Assembly File]"

#Get all line from input file
input_file = sys.argv[1]
lines = [e.strip() for e in open(input_file)]

#Init class
mem = memory.memory(ins=lines)
reg = register.register()
tran = translator.translator()
re = reportor.reportor(numMemory=len(lines), startSign='@@@', mem=mem.getAll(), reg=reg.getAll(), pc=0)

#Init variable
exited = False
exception = False
cause = ""
pc = 0

re.report()

#Start Simulator
while not exited:
  #Fetch ins from mem and translate it
  ins = mem.get(pc)
  pc+=1
Ejemplo n.º 15
0
 def __init__(self, translator=translator):
     self.formats = set(self.output_types.values())
     self.types = self.output_types.keys()
     self.translator = translator() if callable(translator) else translator