网页在浏览器中可以工作,但在R中不能工作:SSL证书问题:证书已过期。

问题描述 投票:0回答:1

这个 url在浏览器中工作,提供一些JSON数据。

它从R工作,直到最近,它现在返回。

library(jsonlite)
fromJSON("https://api.worldbank.org/v2/country?format=json")

# Error in open.connection(con, "rb") : 
#   SSL certificate problem: certificate has expired

library(rvest)
read_html("https://api.worldbank.org/v2/country?format=json")

# Error in open.connection(con, "rb") : 
#   SSL certificate problem: certificate has expired

目前我所知道的

我不知道这是API方面的问题,还是R的某个地方的问题?

  • 似乎有一个类似的解决方案 此处尽管我使用的任何解决方案都不能使用浏览器自动化(Selenium),但必须使用jsonlite或Rvest。
r ssl rvest rcurl jsonlite
1个回答
0
投票

对于其他有类似问题的人

原因

网站所有者有一个过期的SSL证书。

我可以通过 这个 网站。

enter image description here

(不完善) 解决办法

由于我无法控制url的SSL证书,所以我干脆把所有使用的url从 httpshttp.

例如:

"https://api.worldbank.org/v2/country?format=json"

改为:

"http://api.worldbank.org/v2/country?format=json"
© www.soinside.com 2019 - 2024. All rights reserved.