Pregunta

import urllib
import re
import os
search = (raw_input('[!]Search: '))
site = "http://www.exploit-db.com/list.php?description="+search+"&author=&platform=&type=&port=&osvdb=&cve="   
print site
source = urllib.urlopen(site).read()
founds = re.findall("href='/exploits/\d+",source)
print "\n[+]Search",len(founds),"Results\n"
if len(founds) >=1:
        for found in founds:
                found = found.replace("href='","")
                print "http://www.exploit-db.com"+found
else:
        print "\nCouldnt find anything with your search\n"

Cuando busco el sitio exploit-db.com sólo vengo con 25 resultados, ¿cómo puedo hacer que se vaya a la otra página o vaya pasar 25 resultados.

¿Fue útil?

Solución

fácil de comprobar con sólo visitar el sitio y mirando a las direcciones URL como página de forma manual: sólo hay que poner justo después de la ? en el page=1& URL para ver la segunda página de resultados, o page=2& a vistazo a la tercera página, y así sucesivamente.

¿Cómo es esto una pregunta Python? Es una (! Muy elemental) "pantalla raspado" cuestión.

Otros consejos

Al parecer, el sitio exploit-db.com no permite extender el tamaño de la página. Es necesario, por tanto, a la página "manual" a través de la lista de resultados mediante la repetición del urllib.urlopen () para obtener las páginas siguientes. El URL es la misma que la utilizada inicialmente, más el parámetro &page=n. Atención este valor n parece ser 0-base (página es decir, y = 1 dará la segundo página)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top