open.connection(x, "rb") 中的错误:HTTP 错误 404,使用 read_html 函数

Error in open.connection(x, "rb") : HTTP error 404, with the read_html function

我在使用 xml2 包中的 read_html 函数时遇到以下错误:

Error in open.connection(x, "rb") : HTTP error 404.

这是我尝试阅读的URL:

xml2::read_html("https://www.act.is/media-centre/press-releases/actis-energy-platform-zuma-energía-reaches-financial-close-on-two-further-solar-farms-in-mexico/")

相比之下,读取这个时没有产生错误URL

xml2::read_html("https://www.act.is/media-centre/press-releases/actis-wins-cio-magazine-s-real-asset-award/")

第一个 URL 包含一个带重音符号的单词 "energía",第二个 URL 不包含。 是否可以阅读包含带重音符号的单词的 URL?

URL 中有特殊字符,您必须对它们进行转义。在 Python 中有 HTTP 库,对于 R 你可以找到 here

Python 例子:

base_url = "https://www.act.is/media-centre/press-releases/"
encoded_url = requests.utils.quote("actis-energy-platform-zuma-energía-reaches-financial-close-on-two-further-solar-farms-in-mexico/")
response = requests.get(base_url + encoded_url)

编码URL:

https://www.act.is/media-centre/press-releases/actis-energy-platform-zuma-energ%C3%ADa-reaches-financial-close-on-two-further-solar-farms-in-mexico/