UPDATE maggio 2013
Visto che continuo a vedere la gente menziona questi UESTIONI su Windows, se si fa la seguente prima di eseguire lo script R, si dovrebbe risolvere il problema automaticamente senza la necessità di fare qualsiasi altra cosa in questo post:
library(RCurl)
options(RCurlOptions = list(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl")))
questo imposterà l'opzione gloabally e saranno utilizzato in tutte le chiamate RCurl.
Lascerò il resto del post qui sotto come riferimento.
NOTA: Questa non è una soluzione diretta, ma è anche troppo lungo per un commento o un Tweet #rstats ...
Leggendo l'uscita, il problema sembra essere con l'arricciatura (e quindi pacchetto RCurl). Posso ricreare lo stesso errore per una diversa applicazione, che mi succede su Windows 7 x64 Pro con R2.14.0 utilizzando RCurl_1.6-10:
library(RCurl)
u <- "https://raw.github.com/tonybreyal/Blog-Reference-Functions/master/R/bingSearchXScraper/bingSearchXScraper."
x <- getURL(u)
#Error in curlPerform(curl = curl, .opts = opts, .encoding = .encoding) :
# SSL certificate problem, verify that the CA cert is OK. Details:
#error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Il codice di errore è lo stesso. Nel tuo caso significa che Twitter ti sta inviando un certificato per dirti che sono il vero sito web di Twitter. Ma come fai a sapere che stanno dicendo la verità? Da qualche parte nel tuo sistema devi avere un file che possa confermarlo, ottenuto da una fonte attendibile.
Una soluzione è quella di ottenere che il file come segue che risolve il problema (da notare, ci sono altri siti web che forniscono tali file, ho usato il sito ufficiale cURL):
download.file(url="http://curl.haxx.se/ca/cacert.pem", destfile="cacert.pem")
x <- getURL(u, cainfo = "cacert.pem")
non ho guardato gli interni di ROAuth (tutto ciò che è scritto in S3/S4/Reference-classi mi fa impazzire) ma a un certo punto avrebbe bisogno di impostare il parametro cainfo per superare questo problema (su Windows che è - sembra funzionare bene su Ubuntu per il mio esempio sopra). Non so se ROAuth consenta all'utente di aggiungere questi parametri di arricciatura in qualche modo ma quello sarebbe il modo di risolverlo.
La speranza aiuta un po '.
Tony Breyal
P.S.un altro metodo è possibile, ed evita di scaricare il certificato da cURL, ma non è raccomandato per il tipo di cosa si sta facendo (sul serio, per il vostro scopo di utilizzare Twitter, mi sento di raccomandare contro questo grande tempo):
x <- getURL(u, ssl.verifypeer = FALSE)
UPDATE 2011:
Questo sembra funzionare su diverse piattaforme (beh, Ubuntu e Windows, in ogni caso) e non richiede di scaricare direttamente i certificati SSL come RCurl viene con loro già:
x <- getURL(u, cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl"))
Cosa è il tuo codice che produce questo errore? – Andrie