从 Google 翻译器读取 html 文本时出现问题

Problem with reading html text from Google Translator

我在将某些内容从日语翻译成英语时遇到问题抓取来自Google翻译的一些文本。这是我正在使用的代码:

library(rvest)
library(dplyr)
url_pr2 <- 'https://warp.ndl.go.jp/info:ndljp/pid/11454275/www.mofa.go.jp/mofaj/press/release/17/rls_0430b.html'
webpage2 <- read_html(url_pr2, encoding = 'utf8')
title_data <- html_nodes(webpage2,'h2')
title <- html_text(title_data)
getParam = title
translateFrom = "ja"
translateTo = "en"
search <- gsub(" ", "%20", getParam)
URL_title <- paste("https://translate.google.pl/m?hl=",translateFrom,"&sl=",translateFrom,"&tl=",translateTo,"&ie=UTF-8&prev=_m&q=",search,sep="")
page <- getURL(URL_title)
web_title <- read_html(URL_title)
text_final <- html_nodes(web_title,'.result-container')
html_text(text_final)

但我得到以下文本:

[1] "æ Š € è ¡ “Å” å Š ›ã «é – ¢ ã ™ ã ‹æ— ¥ æ œ¬å ›½æ” ¿ ã ®é – “ã ®å” å®šã ®ç½²å

如果我 运行 相同的代码,但将某些内容从西班牙语或法语翻译成英语,则它可以完美运行。这是另一个代码:

url_pr2 <- 'https://www.gob.mx/sre/prensa/la-sre-brinda-asistencia-a-mexicano-detenido-en-letonia?idiom=es'
webpage2 <- read_html(url_pr2, encoding = 'utf8')
title_data <- html_nodes(webpage2,'.bottom-buffer')
title <- html_text(title_data)
getParam = title
translateFrom = "es"
translateTo = "en"
search <- gsub(" ", "%20", getParam)
URL_title <- paste("https://translate.google.pl/m?hl=",translateFrom,"&sl=",translateFrom,"&tl=",translateTo,"&ie=UTF-8&prev=_m&q=",search,sep="")
page <- getURL(URL_title)
web_title <- read_html(URL_title)
text_final <- html_nodes(web_title,'.result-container')
html_text(text_final)

从前面的代码我得到以下结果:

[1]“SRE 向被拘留在拉脱维亚的墨西哥人提供援助”

有谁知道如何提取英文翻译吗?如果我去我生成的 google 翻译网站,我可以看到英文翻译。

您需要对整个短语进行正确编码才能翻译

search <- URLencode(getParam)

library(rvest)
library(dplyr)

url_pr2 <- 'https://warp.ndl.go.jp/info:ndljp/pid/11454275/www.mofa.go.jp/mofaj/press/release/17/rls_0430b.html'
webpage2 <- read_html(url_pr2, encoding = 'utf8')
title_data <- html_nodes(webpage2,'h2')
title <- html_text(title_data)
getParam = title
translateFrom = "ja"
translateTo = "en"
search <- URLencode(getParam)
URL_title <- paste("https://translate.google.pl/m?hl=",translateFrom,"&sl=",translateFrom,"&tl=",translateTo,"&ie=UTF-8&prev=_m&q=",search,sep="")
page <- read_html(URL_title)
text_final  <- html_node(page,'.result-container') %>% html_text()
print(text_final)

"Signing of an agreement between the Government of Japan and the Government of the Islamic Republic of Pakistan on technical cooperation"