python有道字典翻译_Python 调取有道翻译接口实现在线翻译功能
有道翻译有反爬虫机制,它使用了加密技术。如果你的程序报错,你可以通过搜索、查阅资料找到解决方案:尝试把访问的网址中“/translate_o”中的“_o”删除。
服务器返回的内容,是json的格式。我们可以用处理列表、处理字典的手段来提取翻译。
import requests,json
#调用了两个模块。requests负责上传和下载数据,json负责解析。
while True:
word = input('你想翻译什么呀?')
url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
#使用post需要一个链接。
data={'i': word,
'from': 'AUTO',
'to': 'AUTO',
'smartresult': 'dict',
'client': 'fanyideskweb',
'doctype': 'json',
'version': '2.1',
'keyfrom': 'fanyi.web',
'action': 'FY_BY_REALTIME',
'typoResult': 'false'}
#将需要post的内容,以字典的形式记录在data内。
r = requests.post(url,data)
# 就提示到这里呀,剩余的代码记得自己补充上哦~
result = r.json()
print(result['translateResult'][0][0]['tgt'])
彩蛋:给python套一层壳 GUI(Tkinter组件实现)
import requests
import json
from tkinter import Tk,Button,Entry,Label,Text,END
class YouDaoFanyi(object):
def __init__(self):
pass
def crawl(self,word):
url='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'
#使用post需要一个链接
data={'i': word,
'from': 'AUTO',
'to': 'AUTO',
'smartresult': 'dict',
'client': 'fanyideskweb',
'doctype': 'json',
'version': '2.1',
'keyfrom': 'fanyi.web',
'action': 'FY_BY_REALTIME',
'typoResult': 'false'}
#将需要post的内容,以字典的形式记录在data内。
r = requests.post(url, data)
#post需要输入两个参数,一个是刚才的链接,一个是data,返回的是一个Response对象
answer=json.loads(r.text)
#你可以自己尝试print一下r.text的内容,然后再阅读下面的代码。
result = answer['translateResult'][0][0]['tgt']
return result
class Application(object):
def __init__(self):
self.window = Tk()
self.fanyi = YouDaoFanyi()
self.window.title(u'我的翻译')
#设置窗口大小和位置
self.window.geometry('310x370+500+300')
self.window.minsize(310,370)
self.window.maxsize(310,370)
#创建一个文本框
#self.entry = Entry(self.window)
#self.entry.place(x=10,y=10,width=200,height=25)
#self.entry.bind("",self.submit1)
self.result_text1 = Text(self.window,background = 'azure')
# 喜欢什么背景色就在这里面找哦,但是有色差,得多试试:http://www.science.smith.edu/dftwiki/index.php/Color_Charts_for_TKinter
self.result_text1.place(x = 10,y = 5,width = 285,height = 155)
self.result_text1.bind("",self.submit1)
#创建一个按钮
#为按钮添加事件
self.submit_btn = Button(self.window,text=u'翻译',command=self.submit)
self.submit_btn.place(x=205,y=165,width=35,height=25)
self.submit_btn2 = Button(self.window,text=u'清空',command = self.clean)
self.submit_btn2.place(x=250,y=165,width=35,height=25)
#翻译结果标题
self.title_label = Label(self.window,text=u'翻译结果:')
self.title_label.place(x=10,y=165)
#翻译结果
self.result_text = Text(self.window,background = 'light cyan')
self.result_text.place(x = 10,y = 190,width = 285,height = 165)
#回车翻译
def submit1(self,event):
#从输入框获取用户输入的值
content = self.result_text1.get(0.0,END).strip().replace("\n"," ")
#把这个值传送给服务器进行翻译
result = self.fanyi.crawl(content)
#将结果显示在窗口中的文本框中
self.result_text.delete(0.0,END)
self.result_text.insert(END,result)
#print(content)
def submit(self):
#从输入框获取用户输入的值
content = self.result_text1.get(0.0,END).strip().replace("\n"," ")
#把这个值传送给服务器进行翻译
result = self.fanyi.crawl(content)
#将结果显示在窗口中的文本框中
self.result_text.delete(0.0,END)
self.result_text.insert(END,result)
print(content)
#清空文本域中的内容
def clean(self):
self.result_text1.delete(0.0,END)
self.result_text.delete(0.0,END)
def run(self):
self.window.mainloop()
if __name__=="__main__":
app = Application()
app.run()
python有道字典翻译_Python 调取有道翻译接口实现在线翻译功能相关推荐
- python利用有道词典翻译_Python利用有道词典接口制作即时翻译的工具
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于Python 实用宝典,作者Python 实用宝典 前言 在编程时经 ...
- python调用有道翻译_Python调用有道翻译
import requests import json import time import hashlib import random if __name__ == '__main__': S = ...
- python集合与字典区别_Python中的字典与集合
今天我们来讲一讲python中的字典与集合 Dictionary:字典 Set:集合 字典的语法:Dictionary字典(键值对) 语法: dictionary = {key:value,key:v ...
- 用小牛翻译API让ChatGPT给我做个在线翻译网站
一.引言 随着ChatGPT的持续火爆,各种像ChatGPT人工智能聊天机器人,如Claude,通义千问,文心一言不断涌现.这些新兴的人工智能产物在智能问答.语法纠错.信息抽取.代码撰写.译文评估.文 ...
- pdf在线翻译_推荐可以pdf等格式直接在线翻译的免费工具
今天给大家推荐一个功能强大的网站,叫"迅捷PDF转换器". 网站链接: https://app.xunjiepdf.com/fanyi 因为开始是想将PDF文件换成word格式,结 ...
- python制作英汉词典_Python基于有道实现英汉字典功能
本文实例讲述了Python基于有道实现英汉字典功能的方法.分享给大家供大家参考.具体如下: import re,urllib aa="http://dict.youdao.com/searc ...
- python全排序算法题_Python的100道经典算法题(1)
按照c语言的100道经典算法题,自己原创写的,就得是自己的练习题了 [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数 ...
- python 字符串转字典 编码_python基础--2(字符串、元组、列表、字典、集合、文件、编码转码)...
python支持的数据类型 int 整数型 float 浮点型 complex 复数,实数+虚数,虚数部分以"j"或"J"结尾,a+bj或者complex(a, ...
- python列表中字典排序_python中字典排序,列表中的字典排序
python中字典排序,列表中的字典排序 一.使用python模块:operator import operator #首先要导入模块operator x = {1:2, 3:4, 4:3, 2:1, ...
最新文章
- HarmonyOS UI开发 DirectionalLayout(定向布局) 的使用
- DDD+中台+微服务,yyds
- 洛谷P1330 封锁阳光大学
- 微信小程序服务器开小差了,微信小程序wx.request请求封装
- 关于时间格式的解析问题
- psv无线怎么连接电脑连接电脑连接服务器,psv如何连接电脑复制视频,音乐,图片等资料教程...
- 第1章 MatConvNet简介
- centos7设置静态IP地址方法
- 刷卡机显示服务器连接失败,pos密码错误_POS机常见故障代码解释
- thinkpad选择启动项_ThinkPad如何设置光驱引导启动
- php im即时消息,im即时通讯php
- tapestry mysql_tapestry与mybatis模块的结合
- win7 安装MySQL 5.7.
- 三角形面积的勾股定理
- 对cross-env的理解
- byref和byval什么时候该使用什么时候不该使用
- 个人总结-oracle查询锁表、解锁语句
- python局域网通信_python如何实现网络通信
- Git:在一个仓库中存放多个IDEA项目
- 由安卓开发中的一个坑引发的问题解决之道浅析