Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

jorgeamiguel

Threads atrapalhando o funcionamento?

Recommended Posts

Fiz um código para Verificar se tal pasta da página existe:

# -*- coding: cp1252 -*-import urllib2import Threaddef ver(np): try: urllib2.urlopen(np) print "Página encontrada: "+np except: #print "." v=2v=1lista=[]while v==1: pag = raw_input("Digite a página: ") try: urllib2.urlopen(pag) v=2 except: print "Você digitou uma página inválida ou off."v=1while v==1: dire = raw_input("Digite o caminho para a lista de pastas: ") try: w=open(dire,'r') for l in w: lista.append(l) w.close() v=2 except: print "Você digitou um caminho errado. Um exemplo de caminho certo: C:Documents and SettingsUseDesktopexemplo.txt"for i in lista: if i <> 'n': i=i.replace('n','') np = pag+i thread.start_new_thread(ver,(np,))
Funciona assim, você entra com o site, tem uma lista de nomes de pastas padrões em alguma rquivo .txt separado por enter, aí você entra com o caminho para o arquivo txt e ele vai tentando se conectar com o site em tal pasta, se conseguir imprime: Página encontrada: site/pasta

 

 

Na primeira vez que testei no meu próprio site retornou só a pasta na lista que realmente existia, mas quando testei novamente, retornava pastas que estavam na lista, mas não estavam no meu site. Depois disto está acusando ter realmente conseguido conectar a tal pasta msm ela não existindo. Tentei ir na pasta pelo navegador e, obviamente, não consegui, já que não existia. Podem me ajuda?

 

Não da para editar, então irei postar o novo code com o qual estou tentando e aidna retorna o mesmo erro acima:

 

# -*- coding: cp1252 -*-# by Antharaz# usando threads simples 
Imagem Postada import urllib2 import threading import sys import os lista=[] class verif(threading.Thread): np = 0 def run(self): try: urllib2.urlopen(self.np) print "Página encontrada: "+self.np return 1 except: return 0 v=1 while v==1: pag = raw_input("Digite a página: ") try: urllib2.urlopen(pag) v=2 except: print "Você digitou uma página inválida ou off." v=1 while v==1: dire = raw_input("Digite o caminho para a lista: ") try: w=open(dire,'r') for l in w: lista.append(l) w.close() v=2 except: print "Você digitou um caminho errado. Um exemplo de caminho certo: C:Documents and SettingsUseDesktopexemplo.txt" for i in lista: if i <> 'n': i=i.replace('n','') th=verif() th.np = pag+i th.start()

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta retornar boolean na class verif.

 

Imagem Postada

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.