如何使用R从本网站(多个网页)抓取数据?

时间:2015-09-22 08:58:14

标签: r web-scraping rvest

我是从网站抓取数据的初学者。我似乎很难用XML或其他包来解释html的结构。 任何人都可以帮我从这个网站下载数据吗?

http://wszw.hzs.mofcom.gov.cn/fecp/fem/corp/fem_cert_stat_view_list.jsp

这是关于中国的投资。字符集是中文的。

到目前为止我尝试过:

library("rvest")

url <- "http://wszw.hzs.mofcom.gov.cn/fecp/fem/corp/fem_cert_stat_view_list.jsp" 

firm <- url %>% 
  html() %>% 
  html_nodes(xpath='//*[@id="Grid1MainLayer"]/table[1]') %>% 
  html_table() 

firm <- firm[[1]] head(firm)

1 个答案:

答案 0 :(得分:0)

您可以尝试使用名为readHTMLTable的XML包中的函数,该函数应该下载页面中的所有表并将其格式化为data.frame。

library(XML)
all_tables = readHTMLTable("http://wszw.hzs.mofcom.gov.cn/fecp/fem/corp/fem_cert_stat_view_list.jsp")

然后,由于您链接的页面中只有一个表,因此应该足以获得第一个元素:

target_table = all_tables[[1]]