Pegar seu ip valido no terminal usando pythonAs vezes precisamos saber qual o ip valido que estamos saindo para a internet a partir de um terminal unix sem poder contar com uma ferramenta grafica ou ate mesmo com o links para navegar ate um site qualquer que disponibilize essa informacao.No decorrer do tempo administrando servidores unix descobri diversas maneiras de fazer isso.Tambem descobri o interesse em escrever ferramentas proprias para resolver esses problemas de forma simples e rapida.Por falar em coisas simples, uma das coisas que mais me fascina no python e a sua simplicidade para implementar seu codigo usando funcoes como parametros.Nao irei me aprofundar em objetos de primeira classe do python nesse post, mas gostaria de mostrar um exemplo simples de como isso funciona criando uma ferramenta simples para pegar o ip valido que um determinado host esta usando para sair para a internet.Existe uma aplicacao web muito usada para testar a velocidade de um link de internet hospedada no endereco http://www.speedtest.net/Diversos servidores sao disponibilizados por provedores de internet para que seus clientes tenham uma opcao de facil acesso para medir a velocidade do seu linkO que torna essa aplicacao interessante, pois para o provedor manter esse servidor vinculado ao speedtest precisa se enquadrar em diversas exigencias feitas pela empresa reponsavel pela aplicacao, como disponibilidade de link para os testes entre outros.Mas agora o que importa para nos e o fato da url de configuracao dos servidores ser um xml contendo diversas informacoes interessantes.Uma delas e o ip valido que fez o request na pagina da aplicacao.Sabendo dessa informacao escrevi um pequeno codigo que me traz a informacao do ip valido.Segue abaixo o codigo:from urllib2 import urlopenimport xml.etree.ElementTree as etreexmldoc = etree.fromstring(urlopen('http://www.speedtest.net/speedtest-config.php','r').read())print xmldoc.find('client').attrib['ip']view rawpegar_ip_valido.py hosted with by GitHubO que torna essa aplicacao ainda mais interessante sao as outras informcoes que essa mesa chave client utilizada para pegar o ip valido no traz.Uma delas e nome do ISP que prove o link, assim como sua geolocalizacao atraves de latitude e longitude.Podemos usar uma api do google maps para obter o endereco do ISP, mas isso fica para um otro post.Segue abaixo o codigo trazendo o nome do ISP e o ip valido:from urllib2 import urlopenimport xml.etree.ElementTree as etreexmldoc = etree.fromstring(urlopen('http://www.speedtest.net/speedtest-config.php','r').read())print "ISP: {} / IP: {}".format(xmldoc.find('client').attrib['isp'],xmldoc.find('client').a Threads sao pequenas partes de um programa executando em paralelo ao processo principal iniciado pelo mesmo a fim de executar diversos tipos de processamentos ao mesmo tempo. Em python para criar uma nova thread em nossos programas utilizamos a funcao Thread que esta no modulo threading que ja vem na biblioteca padrao. Melhor em boa parte do jogo, time alemao vence por 2 a 1 e vai para a Espanha com a vantagem do empate para jogar a decisao em Munique Mario Gomez completa cruzamento de Lahm para dar a vitoria ao Bayern de Munique sobre o Real Luiz Gustavo e Cristiano Ronaldo disputam a bola: portugues teve tres pares de chuteiras roubados Os bracos de Ribery e Schweinsteiger mostram a forca do Bayern de Munique no Allianz Arena Na madrugada da quinta-feira (12) faleceu a