【发布时间】:2017-07-25 03:58:43
【问题描述】:
我正在尝试学习使用 RSelenium。我只是试图使用 rsDriver 启动服务器。我只是试图运行下面的代码并得到以下错误:
rD <- rsDriver()
checking Selenium Server versions:
BEGIN: PREDOWNLOAD
Error in open.connection(con, "rb") :
Peer certificate cannot be authenticated with given CA certificates
我搜索了堆栈溢出,发现我们可以使用下面的方法为 rsDriver 提供选项,但我仍然遇到错误:
my_extra <- list("--ignore-ssl-errors=true", "--ssl-protocol=tlsv1", "--web-security=no")
rs <- rsDriver(extraCapabilities = my_extra)
checking Selenium Server versions:
BEGIN: PREDOWNLOAD
Error in open.connection(con, "rb") :
Peer certificate cannot be authenticated with given CA certificates
我还有什么遗漏的吗?
对于 httr::GET 功能,我可以使用以下方法绕过 SSL 证书:
set_config(config(ssl_verifypeer=0L)).
但此方法不适用于 RSelenium::rsDriver。
这是我的系统规格: 我的操作系统:Microsoft Windows 10
R version 3.4.1 (2017-06-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252
[2] LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] RCurl_1.95-4.8 bitops_1.0-6 httr_1.2.1 wdman_0.2.2
[5] RSelenium_1.7.1
loaded via a namespace (and not attached):
[1] Rcpp_0.12.12 XML_3.98-1.9 binman_0.1.0 assertthat_0.2.0
[5] R6_2.2.2 jsonlite_1.5 semver_0.2.0 curl_2.7
[9] tools_3.4.1 yaml_2.1.14 compiler_3.4.1 caTools_1.17.1
[13] openssl_0.9.6
【问题讨论】:
-
我试过这个命令:httr::with_config(config(ssl_verifypeer=0L),wdman::selenium(retcommand=TRUE))。但它仍然不起作用。完全相同的错误:对等证书无法使用给定的 CA 证书进行身份验证。有没有其他启动服务器的方法?也许使用其他方法可以通过“忽略 SSL 证书”命令?
-
问题在于
jsonlite::fromJSON。底层包curl需要传递ssl_verifypeer参数。在给出的问题中,您可以通过模拟函数来做到这一点。
标签: r selenium ssl connection certificate