代码实现:

现在该 POST 的 Data 都有了,开始正式写代码啦,下面是程序的代码,每行我都有详细的注释,相信大家通过上面的分析也是可以看明白的。

import time # 时间戳

import json # 返回json 处理

import requests # 请求 url

import hashlib # md5 加密

def translate(word):

url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'

# http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule

# 有道翻译的 API

t = str(int(time.time()*1000)) # 当前时间戳

s = "sr_3(QOHT)L2dx#uuGR@r" # 一段用来加密的字符串

sign_ = "fanyideskweb" + word + t + s

m = hashlib.md5() # 根据数据串的内容进行 md5 加密

m.update((sign_).encode('utf-8'))

# print(m.hexdigest())

word_key = { # key 这个字典为 POST 给有道词典服务器的内容

'i' :word,

'from':'AUTO',

'to':'AUTO',

'smartresult':'dict',

'client':'fanyideskweb',

'salt':t,

'sign':m.hexdigest(),

'doctype': 'json',

'version': '2.1',

'keyfrom': 'fanyi.web',

'action': 'FY_BY_CLICKBUTTION',

'typoResult': 'false'

}

response = requests.post(url,data = word_key)# 发送请求

#print(response)

# 判断服务器是否相应成功

if(response.status_code == 200):

return response.text

else:

print("有道 API 调用失败")

return None

def get_word_result(word):

# print(word)

word_result = json.loads(word)

# 通过 json.loads 把返回的结果加载成 json 格式

# print(word_result)

print("输入的词为:" + word_result["translateResult"][0][0]['src'])

print("翻译结果为:" + word_result["translateResult"][0][0]['tgt'])

def main():

print("欢迎使用,本程序调用有道词典 API 进行翻译\n自动检测输入语言-->中文\n中文-->英文")

while(True):

word = str(input("请输入你想翻译的词或者句子(输入 q 退出):"))

if(word == 'q'):

print("感谢使用")

break

word_ = translate(word)

get_word_result(word_)

if __name__ == '__main__':

main()

现在应该就大功告成了,不过当你运行上面的代码时,却发现 {"errorCode":50} 呀,怎么没有想要的结果呢?博主你是不是弄错了呀,哈哈哈,在这里如果你细心观察的话,你会发现有个东西我上面没有仔细说,那就是时间戳的得到,在 js 代码里我们可以看到的是,这里有一个反扒的机制,t = 当前时间的时间戳 + 0-10的随机字符串,巨坑。

python 英语翻译_python中英文翻译相关推荐

  1. python 英语翻译_python中英文翻译模块

    从一种语言到另一种语言的文本翻译在各种网站中越来越普遍. 帮助我们执行此操作的python包称为translate. 可以通过以下方式安装此软件包. 它提供主要语言的翻译. 安装 pip instal ...

  2. python 英语翻译_python 中英文翻译

    [实例简介] [实例截图] [核心代码]import urllib.request #导入urllib模块,主要功能是获取网页数据,request用于模拟发送请求 import urllib.pars ...

  3. Python 单词翻译:中英文翻译模块

    简 介: 测试了 中英文翻译模块中的中英文翻译模块的功能.这个模块每天只提供有限的英文单词翻译功能. 关键词: 中英文翻译# #mermaid-svg-VLV67DrDfCYjIugK {font-f ...

  4. python免费翻译_Python 免费翻译API

    1.安装API pip install googletrans 2.使用: from googletrans import Translator translate = Translator() re ...

  5. java web中英翻译_中英文翻译简单web项目示例(3)

    我们上一篇初步体验了一把百度翻译api的魅力,由于分享作者是一位java程序员,所以下载的是百度翻译java语言开发包,这节主要分享介绍基于java web项目嵌入百度翻译api做个简单的中文翻译英文 ...

  6. 爬壁机器人外文文献_新型爬壁机器人多向磁化永磁吸附装置的设计外文文献翻译、中英文翻译...

    附录 1 :外文翻译 新型爬壁机器人多向磁化永磁吸附装置的设计 引言: 一种用于爬壁机器人的多向磁化永磁吸附装置 (PMAD) . 在相同质量下, 新型 PMAD 能显著提高吸附力.首先,基于本文提出 ...

  7. python中文对齐_Python中英文对齐终极解决方案

    原博文 2020-05-14 17:43 − ## 问题描述 强迫症发作 ## 对齐结果 ![](https://img2020.cnblogs.com/blog/1418366/202005/141 ...

  8. python 英语教学_Python基础教程(英文视频教学)

    Python基础教程 -.1.-.Installing_Python_video.flv: http://www.t00y.com/file/10034879 -.2.-.Numbers_and_Ma ...

  9. python 英语分词_Python英文文本分词(无空格)模块wordninja的使用实例

    在NLP中,数据清洗与分词往往是很多工作开始的第一步,大多数工作中只有中文语料数据需要进行分词,现有的分词工具也已经有了很多了,这里就不再多介绍了.英文语料由于其本身存在空格符所以无需跟中文语料同样处 ...

最新文章

  1. 如何解决KEIL 5 编KEIL4同RTX系统的project解
  2. 前端规范之媒体文件规范
  3. 单元测试 applicationinfomanager bean无法注入_你真的会用Spring吗?如何在单例Bean中注入原型Bean...
  4. ACL 2021|CHASE: 首个跨领域多轮Text2SQL中文数据集
  5. RoR开发环境搭建 RAILS install log
  6. 1054 The Dominant Color (20 分)_12行代码AC
  7. C 语言中可以调用命令行指令的 system()函数
  8. MyEclipse的自动补全功能:输入@或者.没提示
  9. 每天进步一点点《ML - 异常点检测》
  10. Android 系统(40)--Android7.0 PowerManagerService亮灭屏分析(一)
  11. 台大matlab教程笔记
  12. 国密 GmSSL 版本及安装
  13. idea配置tomcat热部署
  14. linux权限百度贴吧,api接口权限控制
  15. 在线运行html代码网站汇总(HTML代码在线运行实用网站收集)
  16. 软件测试周刊(第47期):要爱具体的人,不要爱抽象的人;要爱生活,不要爱生活的意义。
  17. Windows Mobile下的重力感应器(Gravitational Sensor)开发
  18. 《中国古代文化常识》读书笔记
  19. Laravel学习笔记目录
  20. discuz插件开发及页面跳转教程

热门文章

  1. 网盘资源搜索工具,网罗各大平台的网盘
  2. 嵌入式实践教程--ASOC之Codec
  3. 麻省理工学院的计算机终端,“面纱(Veil)”系统:打造真正的无痕浏览
  4. python分钟转换小时_Python程序将秒转换为小时,分钟和秒
  5. Web端访问微信小程序云数据库
  6. 中国第一代程序员列传 我的偶像
  7. 计算机应用研究、计算机工程与应用、计算机科学与探索投稿经验
  8. JavaScript 精选:哪些能提高开发效率的es6 新语法糖
  9. 基于 HTML5 的工业组态高炉炼铁 3D 大屏可视化
  10. C#操作开机自启动(写进注册表)