2012-06-18 9 views
19

Uso Tor in combinazione con R e desidero modificare il mio IP per ogni nuova richiesta. Il codice che ho è il seguente:Modifica identità Tor in R

library(RCurl) 
opts <- list(proxy="127.0.0.1", proxyport=8118) 
for (i in 1:10) 
    { 
    con <- socketConnection(host="127.0.0.1",port=9051) # DOES NOT WORK 
    writeLines("signal newnym", con=con)     # DOES NOT WORK 
    ip <- getURL("http://ifconfig.me/ip", .opts = opts) 
    print(ip) 
    Sys.sleep(1) 
    } 

sono in grado di connettersi tramite Tor, tuttavia le due linee contrassegnati come 'NON FUNZIONA' non sembrano per ottenere il segnale corretto attraverso di Tor, in modo che il IP resta lo stesso.

Saluti!

risposta

8

Ho avuto un problema simile, ma sono riuscito a farlo funzionare dopo aver installato Privoxy come proxy http e configurandolo come spiegato here. Quindi, questo è il codice che ho usato in R:

library(RCurl) 
# check current IP address 
print(getURL("http://ifconfig.me/ip")) 
# proxy options 
opts <- list(proxy="127.0.0.1", proxyport=8118) 
# opening connection with TOR 
con <- socketConnection(host="127.0.0.1",port=9051) 
print(getURL("http://ifconfig.me/ip", .opts = opts)) 

for (i in 1:10) 
    { 
    writeLines('AUTHENTICATE \"password\"\r\nSIGNAL NEWNYM\r\n', con=con) 
    Sys.sleep(5) 
    print(getURL("http://ifconfig.me/ip", .opts = opts)) 
    Sys.sleep(5) 
    } 

Assicurarsi che si sta utilizzando le impostazioni manuali per la connessione TCP, con l'indirizzo 127.0.0.1:9051, e il metodo di autenticazione è "password", sostituendo la password tra virgolette nel codice sopra con quello impostato.