当我尝试用葡萄牙语网页抓取政府网页时,我遇到了一些编码问题。这是我的代码:
library("RCurl")
library("XML")
html = getURL("http://sei.cade.gov.br/sei/institucional/pesquisa/documento_consulta_externa.php?u0r2HDE7WIdiBH3O1y0Dr6krqmN-VVCNjJtZWrdX1mgt3CiIC_RM90F01GwwNk20muowNXaYKrI2Ob8UQUkAoA,,")
par = htmlParse(html)
x = xpathSApply(par, "//strong", xmlValue)[1]
print(x)
[1] "NOTA TÉCNICA Nº 58/2017/CGAA6/SGA2/SG/CADE"我尝试了一些方法,比如将encoding="latin1"和encoding="UTF-8"添加到htmlParse中,将.encoding="latin"和.encoding="UTF-8"添加到getURL中。
我的系统似乎被设置到了正确的位置,正如Sys.getlocale()所提供的那样
Sys.getlocale()
[1] "LC_COLLATE=Portuguese_Brazil.1252;LC_CTYPE=Portuguese_Brazil.1252;LC_MONETARY=Portuguese_Brazil.1252;LC_NUMERIC=C;LC_TIME=Portuguese_Brazil.1252"我已经没有办法了,如果能帮上忙我会很感激。
发布于 2017-08-26 08:26:53
我用你的代码添加了一个东西,就能让它正常工作。
## Your code
library("RCurl")
library("XML")
html = getURL("http://sei.cade.gov.br/sei/institucional/pesquisa/documento_consulta_externa.php?u0r2HDE7WIdiBH3O1y0Dr6krqmN-VVCNjJtZWrdX1mgt3CiIC_RM90F01GwwNk20muowNXaYKrI2Ob8UQUkAoA,,")
par = htmlParse(html)
x = xpathSApply(par, "//strong", xmlValue)[1]
## Addition
x2 = iconv(x, from="UTF-8", to="latin1")
print(x2)
"NOTA TÉCNICA Nº 58/2017/CGAA6/SGA2/SG/CADE"https://stackoverflow.com/questions/45890211
复制相似问题