我需要用像%C3%A9,%C3%A2这样的字符串替换像é和â这样的特殊字符。这是因为具有特殊字符的网址可以在浏览器中使用,但不能使用R的rvest::read_html()
功能 - 它需要使用“%C3%A9”样式字符串代替特殊字符。
目前,我不得不等到因为网址中有特殊字符而导致错误,然后我必须手动查找特殊字符的等效值here,然后gsub它:
list_of_urls %>%
gsub("é", "%C3%A9", .) %>%
gsub("â", "%C3%A2", .) %>%
gsub("ç", "%C3%A7", .) %>%
gsub("á", "%C3%A1", .)
是否有一个R函数自动为所有特殊字符执行此操作(即没有单个字符的所有gsub)?
例如,字符串“glaçage”应该变为“gla%C3%A7age”
字符串“café”应该变成“caf%C3%A9”
答案 0 :(得分:1)
URLencode
中的utils
怎么样?以下是它的示例:
> library(utils)
> URLencode("glaçage")
[1] "gla%E7age"
> z <- URLencode("glaçage")
> URLdecode(z)
[1] "glaçage"
第二个例子:
> URLencode("café")
[1] "caf%E9"