Hola a todos, he codeado algo en python que me va mostrando resultados de una busqueda, lo que quiera hacer es ir añadiendo dichos elementos a una lista, luego recorrerla y mostrarla.
El problema es que no se como añadirlos por indice.
Comentar que vengo de java y tengo un nivel alto de programacion pero python he programado sin leer ni una puñetera referencia.
Saludos
#!/usr/bin/python
lista = [1, 2, 3, 4, 5]
lista.insert(0, 123)
print lista
lista.insert( 5, 123)
print lista
for i in range(len(lista)):
print lista[i]
Y como puedo declarar la lista como inicialmente vacia?
Saludos
lista = []
He llegado a esa misma conclusion, pero por algun motivo mi programa no funciona, haber si ven que error estoy cometiendo:
#!/usr/bin/env python
# http://www.delincuentedigital.com.ar/
# Editado por Debci
import urllib
import re
import os
os.system('clear')
sitio = "http://www.milw0rm.com/search.php?dong="
dong = (raw_input('[!]Busqueda:\n'))
descarga = (raw_input('[!]Desea descargar todos los exploits que encuentre? (Si o No)\n'))
source = urllib.urlopen(sitio+dong).read()
founds = re.findall("href=\"/exploits/\d+",source)
encontrados = len(founds)
corredor = 0
lista = []
if encontrados == 1:
print "\n[+]Su busqueda devolvio",encontrados,"resultado\n"
elif encontrados == 0:
print "\n[-]No se ha encontrado ningun resultado\n"
else:
print "\n[+]Su busqueda devolvio",encontrados,"resultados\n"
if len(founds) >=1:
for found in founds:
found = found.replace("href=\"","")
print "http://www.milw0rm.com"+found
enlace = "http://www.milw0rm.com"+found
lista.insert(corredor, enlace)
corredor+=corredor
if descarga == "si" or descarga == "Si" or descarga == "SI":
for i in len(lista):
os.system("wget",lista[i])
El programa busca exploits en milworm y opcionalmente los descarga.
Saludos
Arregla el ultimo IF por lo siguiente:
if descarga == "si" or descarga == "Si" or descarga == "SI":
for i in range(len(lista)):
os.system("wget "+lista[i])
Pero que tiene mi code para no arrancar?
Arroja un bonito:
Citar
root@bt:~/Desarrollo/Python# ./BuscadorExploits.py
File "./BuscadorExploits.py", line 35
print "Hola"
^
IndentationError: expected an indented block
Saludos
Acabo de probar tu codigo con el ultimo arreglo que te especifique... y funciona.
Ahora, ten en cuenta que Python es un interprete obsesivo con las Tabulaciones en el codigo ;) tienes que Tabular las expresiones que vayas haciendo... de lo contrario se queja como te esta diciendo, toma tu codigo nuevamente pero arreglada la ultima condicion:
import urllib
import re
import os
os.system('clear')
sitio = "http://www.milw0rm.com/search.php?dong="
dong = (raw_input('[!]Busqueda:\n'))
descarga = (raw_input('[!]Desea descargar todos los exploits que encuentre? (Si o No)\n'))
source = urllib.urlopen(sitio+dong).read()
founds = re.findall("href=\"/exploits/\d+",source)
encontrados = len(founds)
corredor = 0
lista = []
if encontrados == 1:
print "\n[+]Su busqueda devolvio",encontrados,"resultado\n"
elif encontrados == 0:
print "\n[-]No se ha encontrado ningun resultado\n"
else:
print "\n[+]Su busqueda devolvio",encontrados,"resultados\n"
if len(founds) >=1:
for found in founds:
found = found.replace("href=\"","")
print "http://www.milw0rm.com"+found
enlace = "http://www.milw0rm.com"+found
lista.insert(corredor, enlace)
corredor+=corredor
if descarga == "si" or descarga == "Si" or descarga == "SI":
for i in range(len(lista)):
os.system("wget "+lista[i])
Como te dice Tifa, la última línea de código no la tienes indentada, así que cuando busca la variable "i" la busca fuera del for, y afuera no existe :P
Saludos
y como delimito los limites de los bucles y tal?
Tabulacion?
Es que como no hay llaves ni nada por el estilo...
Saludos y gracias a todos
for ...:
for ...:
Codigo
Más codigo en el for más interno
Código en el for externo
Codigo fuera del los ciclos