今天看到园友心白水撰写的《简单翻译工具--必应字典第三方API使用方法》,感觉很不错,所以用Python也写了一个。源码如下:

 import urllib.request
import json serviceurl='http://xtk.azurewebsites.net/BingDictService.aspx?Word=' while True:
word = input('请输入英文单词: ')
if len(word) < 1 :
break
url = serviceurl + word
try:
uh = urllib.request.urlopen(url)
except:
print('API错误,请重试')
continue
data = uh.read()
try:
js = json.loads(data.decode('utf-8'))
except:
js = '' if ( js["pronunciation"] == None):
print("未查到匹配单词") else:
print("美音:[" ,js["pronunciation"]["AmE"],
          "] 英音:[",js["pronunciation"]["BrE"],"]\n")
for de in js["defs"]:
print(de["pos"],de["def"])
print("\n例句")
for sam in js["sams"]:
print("en:", sam["eng"])
print("中文:", sam["chn"],"\n")
continue

程序运行的结果如下:

请输入英文单词: python
美音:[ 'paɪθɑn ] 英音:[ 'paɪθ(ə)n ]

n. 蟒;蚺蛇
Web 蟒蛇;巨蟒;派森

例句
en: Serpent blood spurted through the air, and in a minute, the huge python was dead.
中文: 蛇血在空中喷射出来,很快,大蟒蛇就死了。

en: Suggests that Python Web services implementations were not the only ones having trouble with the air fare quote service.
中文: 指出,PythonWeb服务实现并不是惟一使用机票报价服务有困难的。

en: Another idea is to require python owners to have their pets fitted with microchips.
中文: 另一个想法是让养蛇人给他们的宠物配上微芯片。

en: A practice millennium python seeing, changes into an elegant young man, spits into the borneol in his mouth.
中文: 一修炼千年的巨蟒看见,化为一翩翩少年,将冰片吐入他口中。

en: Participants reacted to the meaning threat implicit in Python by handing out a larger notional punishment to a lawbreaker.
中文: 参与者的反应是在巨蟒中一个具有隐含意义的威胁派由一个的更大名义让处罚者进行处罚。

en: Quite a number of Python programmers have recommended Spark to me.
中文: 很多Python程序员都向我推荐Spark。

en: Zhu went out to investigate, and there, a few paces from his door, he saw a huge python!
中文: 祝出去查看,就在门口几步远的地方,他看到了一条巨蟒!

en: The balls disappeared, and the couple found a lumpy-looking carpet python nearby.
中文: 球不见了,夫妇却发现在附近有一条身形凹凸不平的地毯蟒。

en: So, in a second study they used a description of a Monty Python sketch which participants weren't told was supposed to be a joke.
中文: 因此,在第二个实验中,他们使用了一个描述巨蟒的素描,而参与者也没有认为这应该是一个玩笑。

en: The scripts directory contains python scripts used to install and uninstall the application.
中文: 脚本目录包含用于安装和卸载应用程序的python脚本。

bing的简单英文字典工具的更多相关文章

  1. [theWord] 一种英文字典的基类设计

    theWord --- 一种英文字典的基类设计 使用场景 想写一个应用,来记录自己背单词时候,对每个单词的记忆状况之类的东西.至于为什么做这个,试过了一些背单词软件,并不觉得好用,自己做一个吧. 那么 ...

  2. 用Qt写软件系列三:一个简单的系统工具(上)

    导言 继上篇<用Qt写软件系列二:QIECookieViewer>之后,有一段时间没有更新博客了.这次要写的是一个简单的系统工具,需求来自一个内部项目.功能其实很简单,就是查看当前当前系统 ...

  3. Struts2学习笔记NO.1------结合Hibernate完成查询商品类别简单案例(工具IDEA)

    Struts2学习笔记一结合Hibernate完成查询商品类别简单案例(工具IDEA) 1.jar包准备 Hibernate+Struts2 jar包 struts的jar比较多,可以从Struts官 ...

  4. 利用Runtime实现简单的字典转模型

    前言 我们都知道,开发中会有这么一个过程,就是将服务器返回的数据转换成我们自己定义的模型对象.当然服务器返回的数据结构有xml类型的,也有json类型的.本文只讨论json格式的. 大家在项目中一般是 ...

  5. GO实现简单(命令行)工具:sftp,文檔压解,RDS备份,RDS备份下载

    GO实现简单(命令行)工具:sftp,文檔压解,RDS备份,RDS备份下载 轉載請註明出處:https://www.cnblogs.com/funnyzpc/p/11721978.html 内容提要: ...

  6. Python简单遍历字典及删除元素的方法

    Python简单遍历字典及删除元素的方法 这篇文章主要介绍了Python简单遍历字典及删除元素的方法,结合实例形式分析了Python遍历字典删除元素的操作方法与相关注意事项,需要的朋友可以参考下 具体 ...

  7. 基于node实现一个简单的脚手架工具(node控制台交互项目)

    实现控制台输入输出 实现文件读写操作 全原生实现一个简单的脚手架工具 实现vue-cli2源码 一.实现控制台输入输出 关于控制台的输入输出依然是基于node进程管理对象process,在proces ...

  8. 用Python做一个简单的翻译工具

    编程本身是跟年龄无关的一件事,不论你现在是十四五岁,还是四五十岁,如果你热爱它,并且愿意持续投入其中,必定会有所收获. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过 ...

  9. [.NET] WebApi 生成帮助文档及顺便自动创建简单的测试工具

    ==========最终的效果图========== ==========下面开始干活:生成帮助文档========== 一.创建 WebApi 项目 二.找到 HelpPageConfig.cs 并 ...

随机推荐

  1. Spark 官方文档(4)——Configuration配置

    Spark可以通过三种方式配置系统: 通过SparkConf对象, 或者Java系统属性配置Spark的应用参数 通过每个节点上的conf/spark-env.sh脚本为每台机器配置环境变量 通过lo ...

  2. jquery easyui datagrid翻页后再查询始终从第一页开始

    在查询之前将datagrid的属性pageNumber重新设置为1 var opts = grid.datagrid('options'); opts.pageNumber = 1; easyui d ...

  3. (转)C#根据当前时间获取周,月,季度,年度等时间段的起止时间

    DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays( - Convert.ToInt32(dt.DayOfWeek.T ...

  4. overridePendingTransition简介

    1 Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画. 它包括两个部分:一部分是第一个activity退出时的动画:另外一部分时第二个activity进入时 ...

  5. BZOJ 3527: [Zjoi2014]力

    Description 求 \(E_i=\sum _{j=0}^{i-1} \frac {q_j} {(i-j)^2}-\sum _{j=i+1}^{n-1} \frac{q_j} {(i-j)^2} ...

  6. 3D 素材路径

    https://3dwarehouse.sketchup.com/user.html?id=1058361951245355501624136&nav=likedcollections

  7. 企业号查询部门id(改版后)

    1.搜索部门,输入"名称" 2.在后面可以查到部门ID

  8. MySQL 保留字

    ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGINT BINARY BLOB BOTH BY CALL CASCADE C ...

  9. js创建命名空间

    CreateNameSpace: function () { var nameSpaceObjec = arguments[0].split('.'); var currentNameSpaceNam ...

  10. js下载项目中的文件

    项目中有一个连接是下载视频插件,放到服务器上,不能io输出,所以指定地址直接下载 <div id="objInfo"> <jsp:include page=&qu ...