用python编写的一个google翻译

其实就是一个页面提交,然后抓取页面数据的过程


#coding=utf-8
# trans.py
# create :2010-6-2
# last modify: 2010-6-3
# author : ice_cube

import urllib,urllib2
from sgmllib import SGMLParser

class URLLister(SGMLParser):
"""
页面分析
"""
def reset(self):
SGMLParser.reset(self)
self.result = []
self.open = False

def start_span(self, attrs):
id = [v for k, v in attrs if k=='id']
if 'result_box' in id:
self.open = True

def handle_data(self, text):
if self.open:
self.result.append(text)
self.open = False

class GoogleTranslate(object):
def __init__(self):
self.url = 'http://translate.google.cn/translate_t'

def en2zh(self, text):
"""从英文翻译到中文 text为要翻译的内容"""
values={'hl':'zh-CN','ie':'utf8','text':text,'langpair':"en|zh-CN"}
result = self.get_result(values)
return result

def zh2en(self, text):
"""从中文翻译到英文 text为要翻译的内容"""
values={'hl':'zh-CN','ie':'utf8','text':text,'langpair':"zh-CN|en"}
result = self.get_result(values)
return result

def get_result(self, values):
result = ""
data = urllib.urlencode(values)
req = urllib2.Request(self.url, data)
req.add_header('User-Agent', "Mozilla/5.0+(compatible;+Googleb\
/2.1;++http://www.google.com/bot.html)")
response = urllib2.urlopen(req)
parser = URLLister()
parser.feed(response.read())
parser.close()
for i in parser.result:
result += i + " "
return result

if __name__ == "__main__":
trans = GoogleTranslate()
while True:
text = raw_input("请输入要翻译的英文(退出输入q):")
if text=='q':
break;
print "翻译结果:"
print trans.en2zh(text)
print trans.zh2en(text)
### 回答1: 当然可以!以下是一些基本步骤: 1. 选择GUI框架:Python有很多可用的GUI框架,例如Tkinter、PyQt、wxPython等等。选择一个适合自己的GUI框架,并确保已经安装。 2. 获取翻译API:要构建翻译器,需要使用翻译API。目前有许多免费和付费的翻译API,包括百度、谷歌、有道等等。根据自己的需求选择一个API,然后按照API提供的文档进行注册并获取API密钥。 3. 编写代码:使用Python编写代码,与API进行交互,并处理用户输入和输出。在这个过程中,需要涉及到文本输入框、按钮、标签等GUI组件,以及网络请求、JSON解析等技术。 4. 测试和调试:完成代码编写后,进行测试和调试,确保程序可以正常运行,并且输出正确的翻译结果。 以上是一个基本的步骤。当然,在实际开发中还需要考虑更多的细节和问题,例如界面设计、异常处理、性能优化等等。 ### 回答2: 要用Python一个GUI翻译器,我们可以使用Python的Tkinter库来创建GUI界面,并使用翻译的API来完成翻译功能。 首先,需要在Python中安装Tkinter库和翻译的API库,比如Google Translate API或百度翻译API。 接下来,我们可以创建一个GUI窗口,包括一个输入框用于输入需要翻译的文本,一个下拉菜单用于选择源语言和目标语言,以及一个按钮用于触发翻译操作。 当用户点击翻译按钮时,可以获取输入框中的文本和下拉菜单中选择的源语言和目标语言,然后调用翻译的API来进行翻译。 在翻译结果返回后,可以在GUI窗口中显示翻译结果,比如在一个文本框或标签中显示。 除了翻译功能,我们还可以添加一些其他的功能,比如清空输入框、保存翻译记录等。 最后,我们可以使用布局管理器来布置GUI界面,以确保界面的美观和易用性。 总结起来,要用Python一个GUI翻译器,我们需要安装必要的库,创建GUI窗口,获取用户输入和选择,调用翻译的API进行翻译,显示翻译结果,并添加一些其他的功能。这样就可以创建一个简单的GUI翻译器了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值