Ale Postado Novembro 27, 2004 Denunciar Share Postado Novembro 27, 2004 algm pode me ajudar a diminuir esse codigo aqui: def pega_ip(sites="no"): if sites == "no": defaults = ["http://checkip.dyndns.org", "http://www.whatismyip.com/", "http://www.whatismyipaddress.com/"\ , "http://www.lawrencegoetz.com/programs/ipinfo/", "http://www.showmyip.com/pt/"] else: defaults = sites try: fd = urllib.URLopener().open(defaults[0]).read() except: try: fd = urllib.URLopener().open(defaults[1]).read() except: try: fd = urllib.URLopener().open(defaults[2]).read() except: try: fd = urllib.URLopener().open(defaults[3]).read() except: try: fd = urllib.URLopener().open(defaults[4]).read() except: lista[0] = "invalid urls" return lista[0] try: lista = re.findall('[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*',fd) return lista[0] except: lista[0] = "%s invalids"%(sites) return lista[0] deve ter algo menos extenso... vlw... =)ah.. penso em algo como while, mas não consegui implentar nada com sucesso... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Novembro 28, 2004 Denunciar Share Postado Novembro 28, 2004 Eu faria ela assim:def pega_ip(sites="no"): if sites == "no": defaults = ["http://checkip.dyndns.org", "http://www.whatismyip.com/", "http://www.whatismyipaddress.com/", "http://www.lawrencegoetz.com/programs/ipinfo/", "http://www.showmyip.com/pt/"] else: defaults = sites retorno = ["invalid urls"] for site in defaults: try: fd = urllib.urlopen(site).read() lista = re.findall('[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*',fd) if len(lista)>0: retorno = lista[0] break except Exception, e: pass return retornoAbraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Ale
algm pode me ajudar a diminuir esse codigo aqui:
deve ter algo menos extenso... vlw... =)
ah.. penso em algo como while, mas não consegui implentar nada com sucesso...
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.