python proxy scrapy tor

python - Usando Tor proxy con scrapy



(1)

Estaba usando este fragmento: http://snipplr.com/view/66992/use-a-random-user-agent-for-each-request/

Actualización: enlace roto fijo

Necesito ayuda para configurar Tor en Ubuntu y usarlo dentro del framework scrapy.

Investigué un poco y descubrí esta guía:

class RetryChangeProxyMiddleware(RetryMiddleware): def _retry(self, request, reason, spider): log.msg(''Changing proxy'') tn = telnetlib.Telnet(''127.0.0.1'', 9051) tn.read_until("Escape character is ''^]''.", 2) tn.write(''AUTHENTICATE "267765"/r/n'') tn.read_until("250 OK", 2) tn.write("signal NEWNYM/r/n") tn.read_until("250 OK", 2) tn.write("quit/r/n") tn.close() time.sleep(3) log.msg(''Proxy changed'') return RetryMiddleware._retry(self, request, reason, spider)

luego úsala en settings.py:

DOWNLOADER_MIDDLEWARE = { ''spider.middlewares.RetryChangeProxyMiddleware'': 600, }

y luego solo desea enviar solicitudes a través de proxy local (polipo) que se puede hacer con:

tsocks scrapy crawl spirder

¿alguien puede confirmar que este método funciona y usted obtiene diferentes direcciones IP?