Укажите UTF-8
endoding в вызове getURL
и htmlParse
.
a <- getURL(u, .encoding = "UTF-8")
htmlParse(a, encoding = "UTF-8")
. Эти проблемы с локалями всегда трудны для понимания.Когда я набираю cat(a)
(после указания кодировки UTF-8
в getURL
), я вижу, что страница he.wrodpress.org
претендует на то, чтобы быть UTF-8: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
, но биты на иврите - UTF-16.То есть они выглядят как <U+05D3><U+05E6><U+05DE><U+05D1><U+05E8>
.Так что это может быть проблемой, вызванной смешанным кодированием этой веб-страницы.
При сравнении нескольких кодировок единственное, что не генерирует бред на моей машине, - это UTF-8.
(trees <- lapply(c("UTF-8", "UTF-16", "latin1"), function(enc)
{
a <- getURL(u, .opts = proxy_opts, .encoding = enc)
htmlParse(a, encoding = enc)
}))
Если это становится отчаянным, передайте iconvlist()
для подтверждения в приведенном выше коде и посмотрите, работает ли какое-либо из возможных условий для вас.