我今天使用我最喜欢的R套餐来阅读谷歌电子表格中的数据。它不会起作用。我的所有机器(我使用Windows)都出现了这个问题,这似乎是一个新问题。我正在使用版本:RGoogleDocs的0.4-1
library(RGoogleDocs)
ps <-readline(prompt="get the password in ")
sheets.con = getGoogleDocsConnection(getGoogleAuth("fxxxh@gmail.com", ps, service ="wise"))
ts2=getWorksheets("OnCall",sheets.con)
这就是我在运行最后一行后得到的结果。
curlPerform出错(curl = curl,.opts = opts,.encoding = .encoding): SSL证书问题,验证CA证书是否正常。细节: 错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败
我做了一些阅读并遇到了一些有趣的信息,但至少对我没用,信息。
When I try to interact with a URL via https, I get an error of the form
Curl: SSL certificate problem, verify that the CA cert is OK
我收到了非常大的图片信息,但不知道如何在我的脚本中实现解决方案。我在getWorksheets之前删除了以下行。
x = getURLContent("https://www.google.com", ssl.verifypeer = FALSE)
这没用,所以我试过
ts2=getWorksheets("OnCall",sheets.con,ssl.verifypeer = FALSE)
这也行不通。
有趣的是,以下一行有效
getDocs(sheets.con,folders = FALSE)
你有什么建议我试着让它再次运作?感谢。
答案 0 :(得分:3)
我不再有这个问题。我不太记得确切地说我克服了这个问题的时间表,并且不记得是谁帮助我到了这里,但这是一个典型的会议。
library(RGoogleDocs)
if(exists("ps")) print("got password, keep going") else ps <-readline(prompt="get the password in ") #conditional password asking
options(RCurlOptions = list(capath = system.file("CurlSSL", "cacert.pem", package = "RCurl"), ssl.verifypeer = FALSE))
sheets.con = getGoogleDocsConnection(getGoogleAuth("fjh@gmail.com", ps, service ="wise"))
#WARNING: this would prevent curl from detecting a 'man in the middle' attack
ts2=getWorksheets("name of workbook here",sheets.con)
names(ts2)
sheet.1 <-sheetAsMatrix(ts2$"Sheet 1",header=TRUE, as.data.frame=TRUE, trim=TRUE) #Get one sheet
other <-sheetAsMatrix(ts2$"whatever name of tab",header=TRUE, as.data.frame=TRUE, trim=TRUE) #Get other sheet
对你有帮助吗?
答案 1 :(得分:0)
也许您没有安装certificate bundle。我在OS X上安装了它们。您也可以在curl站点上找到它们