Exemple #1
0
    def do_POST(self):
        try:
            self.send_response(200, message=None)
            self.send_header('Content-type', 'text/html')
            self.end_headers()

            datas = self.rfile.read(int(self.headers['content-length']))
            datas = urllib.unquote(datas).decode("utf-8", 'ignore')
            pattern = re.compile(r'TYPE=([^\&]*)\&WORDS=(.*)')
            match = pattern.match(datas)
            if match:
                group_1 = match.group(1)
                group_2 = match.group(2)
                if group_1.upper() == 'RNN':
                    start = time.time()
                    # logg.DEBUG(group_2,'here is input string from web')

                    result = coreControl.CoreContro(group_2).reslutJson

                    print u'RNN:%s  %s srtart:%s end:%s 耗时: %s' % (
                        group_2, result, start, time.time(),
                        time.time() - start)
                    self.wfile.write(result)
        except IOError:
            self.send_error(404, message=None)
Exemple #2
0
    def do_POST(self):
        self.protocal_version = 'HTTP/1.1'
        self.send_response(200)
        self.send_header("Welcome", "Contect")
        self.send_header("Content-type", "text/html")
        self.end_headers()
        try:
            datas = self.rfile.read(int(self.headers['content-length']))
            datas = urllib.unquote(datas).decode("utf-8", 'ignore')

            pattern = re.compile(r'TYPE=([^\&]*)\&WORDS=(.*)')
            match = pattern.match(datas)
            if match:
                group_1 = match.group(1)
                group_2 = match.group(2)
                if group_1.upper() == 'RNN':
                    start = time.time()
                    #
                    result = coreControl.CoreContro(group_2).reslutJson
                    print u'RNN:%s  %s 耗时: %s' % (group_2, result,
                                                  time.time() - start)
                    self.wfile.write(result)
                # elif group_1.upper() == 'DOMAIN':
                #     start = time.time()
                #     result = run_classify.classify_result(group_2)
                #     print  u'RNN:%s  %s 耗时: %s' % (group_2, result, time.time() - start)
                #     self.wfile.write(result)
                # elif group_1.upper() == 'CORRECTION':
                #     start = time.time()
                #     target = http2server_raw.proofcheck()
                #     character, mongodic, category = target.proofreadAndSuggest(u"%s" % group_2)
                #     result = target.result_form(character, category)
                #     t2 = threading.Thread(target=target.writeToMongo, args=(character, mongodic,))
                #     t2.setDaemon(True)
                #     t2.start()
                #
                #     print  u'CORRECTION:%s  %s 耗时: %s' % (group_2, result, time.time() - start)
                #     self.wfile.write(result)
                # elif group_1.upper() ==u'LU' or group_1.upper() =='LU':
                #     http2server_raw.GetSearcher()
                #     # test.GetSearcher()
                #     print 'lucene has updated'
                #     self.wfile.write('ok')
                else:
                    self.wfile.write('请输入正确的查询参数')
            else:
                self.wfile.write('请输入正确的查询参数')
        except Exception, e:
            print 'traceback.format_exc():\n%s' % traceback.format_exc()
            self.wfile.write('Exception')
Exemple #3
0
    def do_GET(self):
        try:
            self.send_response(200, message=None)
            self.send_header('Content-type', 'text/html')
            self.end_headers()
            res = '''
            <!DOCTYPE HTML><html>
            <meta charset="utf-8">
            <head><title>Get page</title></head>
            <body>
            <form		action="post_word"	method="post" >
            TYPE:<br>
            <input type="text"		name="TYPE"		/><br>
            VALUE:<br>
            <input type="text"		name="WORDS"	/><br>
            <input type="submit"	value="SUBMIT"	/>
            </form></body> </html>
            '''

            self.wfile.write(res.encode(encoding='utf_8', errors='strict'))

            # datas = u'TYPE=RNN&WORDS='+self.command
            datas = self.command
            pattern = re.compile(r'TYPE=([^\&]*)\&WORDS=(.*)')
            match = pattern.match(datas)
            if match:
                group_1 = match.group(1)
                group_2 = match.group(2)
                if group_1.upper() == 'RNN':
                    start = time.time()
                    result = coreControl.CoreContro(group_2).reslutJson
                    print u'RNN:%s  %s srtart:%s end:%s 耗时: %s' % (
                        group_2, result, start, time.time(),
                        time.time() - start)
                    self.wfile.write(result)
                    # self.wfile.write(res.encode(encoding='utf_8', errors='strict'))
        except IOError:
            self.send_error(404, message=None)
Exemple #4
0
 def post(self):
     # 获取参数
     #print self.request
     # print self.path_args
     try:
         type = self.get_argument("TYPE", None)
         words = self.get_argument("WORDS", None)
         #print type,words
         if words != '':
             if type == 'RNN':#'DOMAIN':
                 start = time.time()
                 #label, _, _1 = run_classify.classify_result(words)
                 result = coreControl.CoreContro(words).reslutJson
                 print  u'RNN:%s  %s 耗时: %s' % (words, result, time.time() - start)
                 #self.write('Form output is :<h1>' + str(label) + '</h1>')
                 self.write(result)
                 # print 'end',time.time() - start
             else:
                 self.write('请输入正确的查询语句')
         else:
             self.write('请输入正确的查询语句')
     except Exception, e:
         print 'traceback.format_exc():\n%s' % traceback.format_exc()
         self.write('Exception')
Exemple #5
0
def baseTestInterface(inPath, outPath):
    '''
    author:syy
    time:20180128
    function:video基础用例单元测试接口

    :param inPath:测试数据路径
    :param outPath:测试结果保存路径

    '''
    book = xlrd.open_workbook(inPath)  #xlrd用于获取每个sheet的sheetname

    with pd.ExcelWriter(outPath) as writer:

        for sheet in book.sheets():  #循环每个sheetname
            #print sheet.name

            if sheet.name == u'VIDEO-推荐':  #推荐类不测试
                continue

            #print sheet.name
            df = pd.read_excel(xlsfile, sheetname=sheet.name)
            lst = [
                u'domain', u'intent', u'name', u'category', u'type', u'actor',
                u'director', u'role', u'tag', u'year', u'area', u'season',
                u'episode', u'resolution', u'award', u'sub_award', u'language',
                u'rate', u'relative', u'extra', u'source', u'part', u'term',
                u'value', u'code'
            ]

            colDict = OrderedDict()
            for i in lst:
                colDict.update({i: []})

            #print colDict

            testcase = df['testcase']
            #print type(testcase)
            for txt in testcase:
                #print 'txt',txt
                try:  #报错
                    s = time.time()
                    da = coreControl.CoreContro(txt.decode('utf-8'))
                    print time.time() - s
                    da = da.reslutJson
                except:
                    da = u'报错'

                print 'da', da
                #print type(da) str
                if da == u'报错':
                    da = '{}'
                    da = json.loads(da)
                else:
                    da = json.loads(da)
                #print type(da)
                if da == {}:
                    for key in colDict:  # 循环每个返回实体
                        if key == 'code':
                            l = colDict[key]

                            l.append(u'报错')
                            colDict[key] = l
                        else:
                            l = colDict.get(key)
                            l.append('')
                            colDict[key] = l
                    #print u'报错',colDict
                elif 'data' in da:

                    for key in colDict:

                        if key in da['data']:

                            l = colDict[key]

                            l.append(da['data'][key])

                            colDict[key] = l

                        elif key == 'code':
                            l = colDict[key]
                            l.append(da[key])
                            colDict[key] = l
                        elif key in da['data']['semantic']:
                            l = colDict[key]
                            l.append(da['data']['semantic'][key])
                            colDict[key] = l
                        else:
                            l = colDict[key]
                            l.append('')
                            colDict[key] = l
                else:
                    for key in colDict:
                        if key == 'code':
                            l = colDict[key]
                            l.append(da[key])
                            colDict[key] = l
                        else:
                            l = colDict[key]
                            l.append('')
                            colDict[key] = l

            #print 'colDict',colDict

            dfreslut = pd.DataFrame(colDict)  #字典转换为DF
            #print dfreslut.head(1)
            #dfreslut.to_excel(writer, sheet_name=sheet.name)
            #break
            dfOri = df[df.columns[0:list(df.columns).index('testcase') + 1]]
            #dfreslut1 = pd.concat([testcase,dfreslut],axis = 1)
            dfreslut1 = pd.concat([dfOri, dfreslut], axis=1)  #
            reTest = reCompare(dfreslut1, sheet.name)
            # print 'reTest',reTest
            dfreslut1[u'测试结果'] = reTest

            #读取每个sheetname表格内容
            dfreslut1.to_excel(writer, sheet_name=sheet.name, index=False)
Exemple #6
0
def testInterface(inPath, outPath):
    '''
    author:syy
    time:20180128
    function:video测试接口

    :param inPath:测试数据路径
    :param outPath:测试结果保存路径
    :return:
    '''

    lst = [
        u'domain', u'intent', u'name', u'category', u'type', u'actor',
        u'director', u'role', u'tag', u'year', u'area', u'season', u'episode',
        u'resolution', u'award', u'sub_award', u'language', u'rate',
        u'relative', u'extra', u'source', u'part', u'term', u'value', u'code'
    ]

    colDict = OrderedDict()
    for i in lst:
        colDict.update({i: []})

    # print colDict
    df = pd.read_excel(inPath, sheet_name=1)  ####change
    testcase = df['testcase']
    # print type(testcase)
    for txt in testcase:
        print 'txt', txt
        try:  # 报错
            da = coreControl.CoreContro(txt.decode('utf-8'))
            da = da.reslutJson
        except:
            da = u'报错'

        print 'da', da
        # print type(da) str
        if da == u'报错':
            da = '{}'
            da = json.loads(da)
        else:
            da = json.loads(da)
        # print type(da)
        if da == {}:
            for key in colDict:  # 循环每个返回实体
                if key == 'code':
                    l = colDict[key]

                    l.append(u'报错')
                    colDict[key] = l
                else:
                    l = colDict.get(key)
                    l.append('')
                    colDict[key] = l
                    # print u'报错',colDict
        elif 'data' in da:

            for key in colDict:

                if key in da['data']:

                    l = colDict[key]

                    l.append(da['data'][key])

                    colDict[key] = l

                elif key == 'code':
                    l = colDict[key]
                    l.append(da[key])
                    colDict[key] = l
                elif key in da['data']['semantic']:
                    l = colDict[key]
                    l.append(da['data']['semantic'][key])
                    colDict[key] = l
                else:
                    l = colDict[key]
                    l.append('')
                    colDict[key] = l
        else:
            for key in colDict:
                if key == 'code':
                    l = colDict[key]
                    l.append(da[key])
                    colDict[key] = l
                else:
                    l = colDict[key]
                    l.append('')
                    colDict[key] = l

    # print 'colDict',colDict

    dfreslut = pd.DataFrame(colDict)  # 字典转换为DF

    dfreslut = pd.concat([testcase, dfreslut], axis=1)  #
    dfreslut.to_excel(outPath, index=False)