Python调用有道词典API实现命令行翻译工具

Finn
Finn
发布时间:2026-10-14 | 4人浏览过
原创

本文介绍如何使用Python编写一个简单的命令行在线翻译工具。通过调用有道翻译API接口,利用urllib库发送POST请求并解析JSON返回数据,实现中英文互译功能。代码包含完整的参数构造、签名生成及结果提取逻辑,适合Python初学者学习网络请求与数据处理。

Python在线翻译工具实现

本文分享了一段使用Python实现在线翻译功能的完整代码示例,供读者参考学习。

运行效果如下图所示。

核心实现代码如下:

有道API接口调用代码


import urllib.request
import urllib.parse
import json

def translation():
  while 1:
    print("-"*30)
    n = input("请选择:1 翻译 2 退出 :")
    if n =='1':
      content = input("请输入要翻译的内容:")
      url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
      data={}
      data['i']= content
      data['from']= 'AUTO'
      data['to']='AUTO'
      data['smartresult'] ='dict'
      data['client']= 'fanyideskweb'
      data['salt']= '15790094838498'
      data['sign']= '9ab763875001c1949ae49d3c230ba19f'
      data['ts']= '1579009483849'
      data['bv']= '5a84f6fbcebd913f0a4e81b6ee54608'
      data['doctype']= 'json'
      data['version']= '2.1'
      data['keyfrom']= 'fanyi.web'
      data['action']= 'FY_BY_CLICKBUTTION'
      data = urllib.parse.urlencode(data).encode('utf-8')
      response = urllib.request.urlopen(url,data)
      html = response.read().decode('utf-8')
      #print(json.loads(html))
      target =json.loads(html)
      print("翻译结果;%s" % (target['translateResult'][0][0]['tgt']))
    elif n=='2':
      print("感谢使用!")
      break
    else:
      print("输入有误!")

if __name__=='__main__':
  translation()

以上就是本文的全部内容,希望这段代码能对读者的学习有所帮助,同时也欢迎大家继续支持本站。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表