大家好,我在python上有一个脚本,但是也有一个问题,在他对单词列表进行验证后,他只是停下来,但不是停下来,有主要功能要做什么,我能做什么?>
import requests
import argparse
usage = ''': python %(prog)s [-h url] [-f file] [-t type]'''
da = argparse.ArgumentParser(usage=usage)
da.add_argument("-u","--url", type=str, help="", dest="host")
da.add_argument("-f","--file", type=str, help="", dest="wordlist")
da.add_argument("-t","--type",type=str, help="D to directory | A to archives)", dest="type")
args = da.parse_args()
url = args.host #URL a ser testada
tipo = args.type
try:
arquivo = open(args.wordlist, "r") #ARQUIVO com a wordlist
#Verificação se a última linha da wordlist está com \n no final
size = arquivo.readlines()
sizeH = len(size) - 1
line = size[sizeH]
if line.endswith('\n'):
print '[F]Remova última linha em branco na wordlist'
exit()
else:
print '[V]Wordlist válida'
print'''
==================================
============INICIANDO=============
==================================
'''</code></pre>
<pre><code>except Exception as erro:
print '\n[!] ERROR: '+ str(erro)
if __name__ == '__main__':
if tipo == "D" or tipo == "d" or tipo == "directory" or tipo == "DIRECTORY":
for linhas in arquivo:
link = url+'/'+linhas[:-1]+'/'
#link = link1[:-1]
request = requests.get(link, timeout=3)
status = request.status_code
if status == 200:
print "[+] Destino existente: "+link+" STATUS: "+str(status)
elif status == 403:
print "[%] Destino privado: "+link+" STATUS: "+str(status)
else:
print "[-] Destino inexistente: "+link+" STATUS: "+str(status)
elif tipo == "A" or tipo == "a" or tipo == "archives" or tipo == "ARCHIVES":
for linhas in arquivo:
link = url+linhas
request = requests.get(link, timeout=3)
status = request.status_code
if status == 200:
print "[+] Destino existente: "+link+" STATUS: "+str(status)
elif status == 403:
print "[%] Destino privado: "+link+" STATUS: "+str(status)
else:
print "[-] Destino inexistente: "+link+" STATUS: "+str(status)
else:
print '[!] Escolha um tipo de teste'
我尝试为该方法的主体命名,并在验证后给他打电话,但没有用。如果我删除验证但不希望删除,就可以工作。