打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【青少年编程】黄羽恒:翻译小工具 -- 利用有道翻译

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。

微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。

编程题

“翻译小工具”是来自「青少年编程竞赛交流群」中 「黄羽恒」 小朋友的作品。

小朋友们在学英语的过程中,通常会遇到两种情况,第一种将英语翻译成汉语,第二种将汉语翻译成英语。本题目要求小朋友们利用“有道翻译”提供的API接口做一个翻译小工具。

有道翻译的网址:https://fanyi.youdao.com/

首先,对“有道翻译”的网页进行分析。

其次,找到“有道翻译”发送请求的方法以及响应该请求的url地址。

再次,编写代码实现给出汉语返回英文、给出英文返回汉语的功能。

最后,输入“q!”结束程序。

1. 思路分析

接口地址:http://fanyi.youdao.com/translate

请求方法:post

请求参数:

参数描述
i待翻译的字符串
from源语言(可设置为auto)
to翻译后的语言(可设置为auto)
client客户端
doctype返回文档类型
version版本号
keyfrom键来源
action执行翻译的动作

2. 程序代码

import requests
import time

while True:
    content = input('请输入要翻译的内容(输入“q!”退出):')
    if content == 'q!':
        break

    url = 'https://fanyi.youdao.com/translate'
    head = {
        'User-Agent''Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36(KHTML.like.Gecko) '
                      'Chrome/39.0.2171.65 Safari/537.36'
    }
    data = {
        'i': content,  # 待翻译的字符串
        "from""AUTO",
        "to""AUTO",
        "client""fanyideskweb",
        "doctype""json",
        "version""2.1",
        "keyfrom""fanyi.web",
        "action""FY_BY_REALTlME"
    }
    try:
        res = requests.post(url, data=data).json()
        print(res)  # 显示出返回的结果
        target = res['translateResult'][0][0]['tgt']
        print(target)  # 打印翻译后的结果
        time.sleep(1)
    except:
        print('遇到错误', res)
        break

3. 结果展示


一级编程题:

二级编程题:

三级编程题:

小朋友投稿:

群内答疑:


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
微信公众平台开发(六) 翻译功能开发
Excel中进行中英文翻译
Excel里内嵌在线翻译
python爬虫反反爬 | 像有道词典这样的 JS 混淆加密应该怎么破
技术资源 | 46个在线机器翻译平台汇总
教你如何优雅的用R语言调用有道翻译
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服