Script de dicionário Inglês para Português em Python

Olhando o meu histórico de comandos aqui no terminal vi que  um dos comandos que uso mais é o dic, mas este comando é um script que fiz em python que traduz  do inglês para português usando a base de dados do Babylon. Como meu inglês não é essas coisas todas, eu preciso por várias vezes no meu dia saber o significado de algumas palavras, então resolvi criar  este script para evitar ter que ir no site toda vez. Como eu sei que pode ser dificuldade de outras pessoas resolvi postar aqui no blog para ajudar:

#!/usr/bin/python
#-*- coding: utf-8 -*-
#------------------------------------------------------------------------+
#   Dicionário Inglês/Português Babylon                                             
#   por Fábio Cerqueira                                                  
#   Versão 0.1b para uso pessoal
#                                                                        
# Licença								                                 
#    Copyright (C) 2009  Fábio Cerqueira                                 
#       							                                	 
#    Este programa é software livre; você pode redistribuí-lo e/ou       
#    modificá-lo sob os termos da Licença Pública Geral GNU, conforme    
#    publicada pela Free Software Foundation; tanto a versão 2 da        
#    Licença como (a seu critério) qualquer versão mais nova.            
#    Este programa é distribuído na expectativa de ser útil, mas SEM     
#    QUALQUER GARANTIA; sem mesmo a garantia implícita de		         
#    COMERCIALIZAÇÃO ou de ADEQUAÇÃO A QUALQUER PROPÓSITO EM             
#    PARTICULAR. Consulte a Licença Pública Geral GNU para obter mais   
#    detalhes.                   					                     
#    Para consultar texto em inglês visite:				                 
#	http://www.gnu.org/licenses/gpl.txt                                  
#									                                     
#------------------------------------------------------------------------+

import urllib2
import sys
import re

if len(sys.argv) < 2:
    print "Erro! Use:\n  %s palavra" % __file__
    sys.exit()
else:
    word = sys.argv&#91;1&#93;
    
try:
    down = urllib2.urlopen('http://online.babylon.com/cgi-bin/trans.cgi?layout=uol.txt&lang=ptg&word=%s' % word)
except:
    print 'Erro! Não foi possível conectar.'
    sys.exit(1)

texto = down.readlines()

ini = '<div style="margin: 5px;">\n'
fim = '</div>\n'

try:
    p = re.compile('(<&#91;^<>]+>)')
    for l in texto[texto.index(ini)+1:texto.index(fim)]:
        s = p.sub('',l.replace('\n',' '))
        print s.decode("iso-8859-1"),
except ValueError:
    print 'Erro! Nao foi possível localizar a palavra.'

Dica: para não ter que digitar o caminho completo de onde você vai colocar o arquivo na hora do uso, crie um link simbólico na pasta /bin/

Anúncios

3 thoughts on “Script de dicionário Inglês para Português em Python

  1. Sergio Luiz Araújo Silva

    Fabio, pensei que o script poderia ter um opcional para ouvir a pronúncia usando o mpg123 ou fazendo uso de alguma biblioteca do python, por exemplo

    “http://translate.google.com.br/#pt|en|amor”

    retorna um link clicável no qual se pode ouvir a pronúncia, se usasse-mos o parâmetro -s –speak ele não traduziria e seim faria a pronúncia. Que tal?

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s