我需要幫助在Ubuntu中設置Tor並在scrapy框架內使用它。使用Tor代理與scrapy
我做了一些研究,發現該指南:
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)
然後settings.py中使用它:
DOWNLOADER_MIDDLEWARE = {
'spider.middlewares.RetryChangeProxyMiddleware': 600,
}
,然後你只是想通過發送本地TOR代理請求(Polipo即可)可以這樣做:
tsocks scrapy crawl spirder
沒有人可以確認,這種方法的工作原理,你得到di不同的IP?
剛剛嘗試對自己的資源,並檢查服務器日誌。並設置用於隱藏所有者的瀏覽器標識符列表:)或爲您的搜尋器添加unic id。 – nk9 2012-07-22 19:56:41
如何設置瀏覽器標識列表? – DjangoPy 2012-07-22 20:07:48
哦......我沒有使用scrapy,所以現在我只是尋求幫助:)。但對於你自己的網站測試更好地使用unic id來輕鬆解析日誌 – nk9 2012-07-22 20:14:32