美文网首页虫虫随笔-生活工作点滴
Python爬虫调用有道翻译,以及加入语音功能

Python爬虫调用有道翻译,以及加入语音功能

作者: 52d19f475fe5 | 来源:发表于2019-07-07 16:18 被阅读17次

版本1.0

调用有道翻译接口,代码8行。我们把它命名为'版本1.0',后续版本可以直接引用这个代码

代码展示:

import requests

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

这个代码可以实现基本的翻译功能,但它用起来有点low了,所以我们要为它加入新的功能

版本2.0

2.0版本中我们加入语音功能,让它把翻译的结果说出来

实现这个功能要调用pyttsx3 这个库,我的运行环境是:Windows10,Python3.7

安装命令:

pip install pyttsx3

代码示例:

import pyttsx3

engine = pyttsx3.init()
engine.say('The quick brown fox jumped over the lazy dog.')
engine.say('那只敏捷的棕色狐狸跳过了那条懒狗。')
engine.runAndWait()

其实,pyttsx3是调用电脑系统的语音功能来实现的,如果你运行上面代码没有读出中文语音"那只敏捷的棕色狐狸跳过了那条懒狗",是因为系统默认为英文语音,需要切换为中文语音,你需要按照下面提示操作:

打开【控制面板】——切换查看方式为【小图标】——点击【语音识别】——点击【文本到语音转换】——在【语音选择】里选择中文语音即可。

代码实现:

import requests
import pyttsx3

while True:
    word = input('请输入要翻译的内容:')
    url = 'http://fanyi.youdao.com/translate'
    data = {'i': word,'doctype': 'json'}   
    headers = {'User-Agent': 'Mozilla/5.0'}       
    response = requests.post(url,data=data,headers=headers)
    result = response.json()['translateResult'][0][0]['tgt']
    print(result)
    engine = pyttsx3.init()
    engine.say(result)
    engine.runAndWait()

附:
pyttsx3的官文文档:https://pyttsx3.readthedocs.io/en/latest/engine.html

Microsoft语音下载:https://www.microsoft.com/en-us/download/details.aspx?id=27224

相关文章

网友评论

    本文标题:Python爬虫调用有道翻译,以及加入语音功能

    本文链接:https://www.haomeiwen.com/subject/prgphctx.html