利用Python来制作一个中英互译器,并实现语音播报

以下代码可以直接使用,唯一需要修改的就是headers部分user-agent的内容,将其更改为各位自己电脑浏览器对应的即可,如果自己不会找的文末会补充说明。


老规矩,直接给代码:

from urllib import request,parse
import json
import pyttsx3


def fanyi(keyword):
    url = 'https://fanyi.baidu.com/sug'
    # 构建请求对象
    data = {
        'kw': keyword
    }
    data = parse.urlencode(data)
    # 模拟浏览器
    headers = {'User-Agent':
        'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36'}
    req = request.Request(url = url, data = bytes(data, encoding = 'utf-8'), headers = headers)
    res = request.urlopen(req)
    # 获取响应的json字符串
    str_json = res.read().decode('utf-8')
    # 把json转换成字典
    myjson = json.loads(str_json)
    info = myjson['data'][0]['v']
    str1 = '第' + str(i) + '次翻译'
    str2 = '输入文字为:' + keyword
    str3 = '翻译结果为:' + info
    print('*' + str1)
    print('*' + str2)
    print('*' + str3, '\n')
    for mystr in [str1, str2, str3]:
        engine.say(mystr)
        engine.runAndWait()


if __name__ == '__main__':
    i = 1
    engine = pyttsx3.init() # 初始化
    print('欢迎使用本翻译器,输入你需要查询的中文或英文,或输入quit来退出程序\n')
    while True:
        keyword = input('请输入翻译的单词或汉字:')
        if keyword == 'quit':
            break
        fanyi(keyword)
        i = i + 1

实现效果如下:


寻找自己电脑的user-agent方法:

1 任意打开一个网页,按F12(笔记本的话需要先点亮Fn键)

2 点击network,并按Ctrl+R刷新页面

3 找到document类型的文件,点击(一般在第一个)

4 在headers里面,进度条拉到最后,复制即可

 


  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mrxianglx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值