我试图使用R和XML包加载一些可公开获得的NHS数据,但我一直收到以下错误消息:
错误:加载外部实体"http://www.england.nhs.uk/statistics/statistical-work-areas/bed-availability-and-occupancy/“失败
我似乎不知道是什么导致了这一点,尽管通过一些相关的问题。
下面是我非常简单的代码:
library("XML")
url <- "http://www.england.nhs.uk/statistics/statistical-work-areas/bed-availability-and-occupancy/"
doc <- htmlParse(url)编辑:会话信息
R版本3.0.1 (2013-05-16)平台:i 386-W64-mingw32 32/i 386(32位) 地区:1 LC_COLLATE=English_United Kingdom.1252 LC_CTYPE=English_United Kingdom.1252 3 LC_MONETARY=English_United Kingdom.1252 LC_NUMERIC=C 5 LC_TIME=English_United King.1252附加基本包:1个stats图形grDevices实用程序 通过命名空间加载的数据集方法(而不是附加的):1 tools_3.0.1
发布于 2015-03-05 15:14:31
Package存在一些问题。这个问题是间歇性的,与URL无关。为了获得html代码,我使用httr包的函数GET解决了这个问题,然后将它传递给htmlParse,如下所示:
library("XML")
library(httr)
url <- "http://www.england.nhs.uk/statistics/statistical-work-areas/bed-availability-and-occupancy/"
doc <- htmlParse(rawToChar(GET(url)$content))发布于 2015-07-25 02:00:31
您还可以使用rvest & xml2包:
library(rvest) # github version
library(xml2) # github version
url <- "http://www.england.nhs.uk/statistics/statistical-work-areas/bed-availability-and-occupancy/"
doc <- read_html(url)
doc %>%
html_nodes("a[href^='http://www.england.nhs.uk/statistics/bed-availability-and-occupancy/']") %>%
html_attr("href")
## [1] "http://www.england.nhs.uk/statistics/bed-availability-and-occupancy/bed-data-overnight/"
## [2] "http://www.england.nhs.uk/statistics/bed-availability-and-occupancy/bed-data-day-only/" https://stackoverflow.com/questions/23430547
复制相似问题