Tradutor on-line em Python+GTK
Publicado por Lincoln de Sousa 16/10/2005
[ Hits: 7.175 ]
Um exemplo de utilização de rotinas em GTK, regular expressions e urllib. E é mais uma prova que o Python também é Orientado a Objetos!!!
import gtk import urllib import re # marretinha para converter os caracteres pra utf-8 # aqrui voce pode substituir esse lambda pelo pygettext se voce # quiser internacionalizar o programa _ = lambda x: unicode(x, 'utf-8', 'ignore') class Tradutor(gtk.Window): """ classe principal da aplicacao. """ def __init__(self): """ construtora da classe """ gtk.Window.__init__(self) self.set_title(_('PyTranslate')) self.set_border_width(3) self.connect('destroy', self.quit_window) vbox = gtk.VBox() hbox = gtk.HBox() self.label = gtk.Label() entry = gtk.Entry() bnt = gtk.Button('Ok') bnt.connect('clicked', self.update_answer, entry) hbox.pack_start(entry) hbox.pack_start(bnt) vbox.pack_start(hbox) vbox.pack_start(self.label) self.add(vbox) def quit_window(self, *args): """ sai da aplicacao """ gtk.main_quit() def update_answer(self, button, entry): """ atualiza o label de resposta """ url = 'http://online.babylon.com/cgi-bin/trans.cgi'\ '?layout=uol.txt&lang=ptg&word=%s' button.set_sensitive(False) etext = entry.get_text() page = urllib.urlopen(url % etext) page = page.read() page = page.replace('<br>', '<BR>') page = page.replace('<BR>', '\n') no_title = re.compile('(<title>.*</title>)', re.S) page = no_title.sub('', page) no_html = re.compile('(<.*?>)', re.S) page = no_html.sub('', page).strip() page = page.replace(etext, '<b>%s</b>' % etext, 1) self.label.set_markup(_(page)) button.set_sensitive(True) if __name__ == '__main__': new_app = Tradutor() new_app.show_all() gtk.main()
Conversor de vídeos do YouTube para MP3
Bot que baixa o KDE 3.4 e a QT para o Slackware 10.1
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como gerar um podcast a partir de um livro em PDF
Organizando seus PDF com o Zotero
Erro no realm join [Resolvido]
Um programa para baixar vídeos: Parabolic
Como Definir o Painel Principal em Múltiplos Monitores no Linux Mint
Sempre que vou baixar algum pacote acontece o erro dpkg (7)
como instalo panfrost-dri e o driver panfrost fork , ou panfrost (12)