Python实现有道翻译+语音播报

有道翻译

调用有道翻译的接口(用谷歌浏览器打开有道翻译-开发者-开发者工具-查找接口)话不多说上代码

def main(): 
    word = input('请输入翻译的内容:')
    url = 'http://fanyi.youdao.com/translate' 
    data = {'i': word, 'doctype':'json'} 
    header = {'User-Agent': 'Mozilla/5.0'} 
    response = requests.post(url, data=data, headers = header) 
    print(response.json()['translateResult'][0][0]['tgt'])

if __name__ == "__main__":

    main()

这几行代码就实现了一个简单的翻译功能很简便吧。

下面我们来添加一个语音功能
要实现这个功能需要调用pyttsx3 这个库,我的运行环境是python3
安装命令:

pip install pyttsx3

代码实现

import requests
import pyttsx3

def main():
    word = input('请输入翻译的内容:')
    url = 'http://fanyi.youdao.com/translate'
    data = {'i': word,
             'doctype':'json'}
    header = {'User-Agent': 'Mozilla/5.0'}
    response = requests.post(url, data=data, headers = header)
    voice = response.json()['translateResult'][0][0]['tgt']
    print(voice)
    engine(voice)

# 语音播报
def engine(voice):
    engine = pyttsx3.init()
    engine.say(voice)
    engine.runAndWait()

if __name__ == "__main__":
    main()

附:pyttsx3的官文文档

你可能感兴趣的:(Python实现有道翻译+语音播报)