我看了几天这个bug,看起来htmlParse函数在解析俄罗斯符号时有编码问题。
例如:
htmlParse("http://ru.wikipedia.org/wiki/Russia", encoding="UTF-8")这个页面是用UTF-8编码的,但是可以肯定的是,我正在用UTF-8对htmlParse进行编码。
但是在htmlParse()输出中,英语符号是正确编码的,但是俄语看起来是典型的错误编码符号。
我使用的是Windows 8,我的语言环境是Russian_Russia.1251。我认为非Unicode语言环境是问题所在,因为当我在Ubuntu中使用这个命令时,一切都按预期工作,但是Ubuntu有en_EN.UTF-8语言环境。
发布于 2014-01-19 13:03:09
我不知道你试过什么,但这对我来说很好:
doc <- htmlParse("http://ru.wikipedia.org/wiki/Russia", encoding="UTF-8")
xpathSApply(doc,'//*[@id="mw-content-text"]/ul/li/a',xmlValue)
[1] "Russia (фильм)" "Киры Муратовой" "Наша Russia"
"Руша (Огайо)" "англ." "Россия (значения)"https://stackoverflow.com/questions/21216806
复制相似问题