聊天机器人 并翻译成中、英文返回

# -*- coding: utf-8 -*-
"""
Created on Wed Dec 12 12:33:16 2018

@author: Administrator
"""
import http.client
import hashlib
import json
import urllib
import random

from time import sleep
import requests

def baidu_translate(content):
    appid = '20151113000005349'
    secretKey = 'osubCEzlGjzvw8qdQc41'
    httpClient = None
    myurl = '/api/trans/vip/translate'
    q = content
    fromLang = 'zh' # 源语言
    toLang = 'en'   # 翻译后的语言  jp日文
    salt = random.randint(32768, 65536)
    sign = appid + q + str(salt) + secretKey
    sign = hashlib.md5(sign.encode()).hexdigest()
    myurl = myurl + '?appid=' + appid + '&q=' + urllib.parse.quote(
        q) + '&from=' + fromLang + '&to=' + toLang + '&salt=' + str(
        salt) + '&sign=' + sign

    try:
        httpClient = http.client.HTTPConnection('api.fanyi.baidu.com')
        httpClient.request('GET', myurl)
        # response是HTTPResponse对象
        response = httpClient.getresponse()
        jsonResponse = response.read().decode("utf-8")# 获得返回的结果,结果为json格式
        js = json.loads(jsonResponse)  # 将json格式的结果转换字典结构
        dst = str(js["trans_result"][0]["dst"])  # 取得翻译后的文本结果
#        print(dst) # 打印结果
        return dst
    except Exception as e:
        print(e)
    finally:
        if httpClient:
            httpClient.close()
#key请填写自己申请的id  一个id一天可以使用1000次
while True:
    s = input("请讲:")
    if ( s == 'q'):
        break
    resp = requests.post("http://www.tuling123.com/openapi/api",data={"key": "4fede3c4384846b9a7d0456a5e1e2943", "info": s, })
    resp = resp.json()
    sleep(1)
    print('小鱼:', resp['text'])
    content=resp['text']
#    sleep(1)
    if (content == 'q'):
        break
    TranslatResult=baidu_translate(content)
    print(TranslatResult)

runfile(‘C:/Users/Administrator/chatTran.py’, wdir=‘C:/Users/Administrator’)

请讲:你几岁了
小鱼: 我9了,虽然岁月不会给我留下皱纹,但是会留下点灰。
I’m 9 years old, although the years will not leave me wrinkles, but will leave a little grey.

请讲:q

猜你喜欢

转载自blog.csdn.net/weixin_33595571/article/details/84971199
今日推荐