簡體   English   中英

使htmlParse與希伯來語一起使用?

[英]Getting htmlParse to work with Hebrew?

我希望htmlParse可以與希伯來語一起很好地工作,但是它會不斷加擾我輸入的希伯來語文本。

例如:

# why can't I parse the Hebrew correctly?
library(RCurl)
library(XML)
u = "http://humus101.com/?p=2737"
a = getURL(u) 
a # Here - the hebrew is fine.
a2 <- htmlParse(a)
a2 # Here it is a mess...

這些似乎都無法解決:

htmlParse(a, encoding = "utf-8")
htmlParse(a, encoding = "iso8859-8")

這是我的語言環境:

> Sys.getlocale()
[1] "LC_COLLATE=Hebrew_Israel.1255;LC_CTYPE=Hebrew_Israel.1255;LC_MONETARY=Hebrew_Israel.1255;LC_NUMERIC=C;LC_TIME=Hebrew_Israel.1255"
> 

有什么建議么?

在對getURLhtmlParse的調用中均指定UTF-8 htmlParse

a <- getURL(u, .encoding = "UTF-8")
htmlParse(a, encoding = "UTF-8")

這些語言環境問題總是讓人難以理解。 當我輸入cat(a) (在getURL指定UTF-8編碼后)時,我看到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> 因此,這可能是該網頁的混合oncoding引起的問題。

比較幾種編碼,在我的機器上唯一不會產生亂碼的編碼是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()傳遞給lapply,然后查看是否有任何適合的條件適合您。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM