#! /usr/bin/env pythonPara ejecutarlo basta con llamar al programa "tor.py" pasándole con el parámetro -u la URL TOR que queremos auditar:
import urllib2, sys, re, urlparse, datetime, optparse, os, socks, socket
#Funcion proxy TOR
def create_connection(address, timeout=None, source_address=None):
sock = socks.socksocket()
sock.connect(address)
return sock
#Funcion que recupera todos los enlaces de una pagina
def getLinks(page):
links = []
try:
#Recuperamos el codigo de la pagina
f = urllib2.urlopen(page)
code = f.read()
f.close()
#Recuperamos los enlaces
urls = re.finditer('href="(.*?)[\'"]', code)
for url in urls:
links.append(url.group(0).replace("'", '').replace('"', "").replace('href=', ""))
return links
except HTTPError, e:
print "Ocurrio un error"
print e.code
except URLError, e:
print "Ocurrio un error"
print e.reason
if __name__ == '__main__':
parser = optparse.OptionParser('usage %prog -u <url>')
parser.add_option('-u', dest='url', type='string', help='url')
(options, args) = parser.parse_args()
url = options.url
#Lanzamos proxy TOR
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, "127.0.0.1", 9050)
socket.socket = socks.socksocket
socket.create_connection = create_connection
#Procesamos la pagina
for link in getLinks(url):
print link
Saludos!
Nice stuff.
ResponderEliminar