2016-09-27 79 views
0

我試圖將XMLInternalElementNode解析爲數據框。 我已閱讀How to parse XML to R data frameHow to get table data from html table in xml但這些解決方案都不適用於我的案例。解析XML節點以獲取R表中的表數據

下面我的代碼不給我一個表:

web=getURL("http://www.tocom.or.jp/market/kobetu/rubber.html", header=FALSE, httpheader = c(Accept="text/html"), verbose = TRUE) 
    doc=htmlParse(web, asText=TRUE, encoding="Windows-1252") 
    tableNodes = getNodeSet(doc, "//table") 

    #this gives me error 
    xmlParse(tableNodes[[2]]) 
    Error in as.vector(x, "character") : 
    cannot coerce type 'externalptr' to vector of type 'character' 

    #This does not return me the table neither: 
    xpathSApply(tableNodes[[2]], path = '//table//tr') 

所以我應該如何從這個網站檢索表?

+1

在調用'tableNodes = getNodeSet(doc,「// table」)''之後,您已經擁有了所有表格。但是,即使在那之後,似乎'readHTMLTable()'由於某種原因無法解析這些內容,因此您應該嘗試使用@ Floo0的答案。 – hrbrmstr

回答

2

什麼:

library(rvest) 
doc <- read_html("http://www.tocom.or.jp/market/kobetu/rubber.html") 
doc %>% html_table(fill=TRUE) 

,讓你的所有表的列表。

+0

謝謝。有用! – user6885562