我使用以下代码:
url = "http://finance.yahoo.com/q/op?s=DIA&m=2013-07"
library(XML)
tabs = readHTMLTable(url, stringsAsFactors = F)
我收到以下错误:
Error: failed to load external entity "http://finance.yahoo.com/q/op?s=DIA&m=2013-07"
当我在浏览器中使用网址时,它可以正常工作。那么,我在这里做错了什么?
由于
答案 0 :(得分:14)
由于我无法复制您的错误,因此很难确定,但根据软件包的作者(请参阅http://comments.gmane.org/gmane.comp.lang.r.mac/2284),XML获取Web内容的方法非常简约。解决方法是使用RCurl
获取内容,XML
解析内容:
library(XML)
library(RCurl)
url <- "http://finance.yahoo.com/q/op?s=DIA&m=2013-07"
tabs <- getURL(url)
tabs <- readHTMLTable(tabs, stringsAsFactors = F)
或者,如果RCurl
仍然出错,请尝试httr
包:
library(httr)
tabs <- GET(url)
tabs <- readHTMLTable(rawToChar(tabs$content), stringsAsFactors = F)
答案 1 :(得分:0)
我得到了与上面相同的错误&#34;未能加载外部实体&#34;使用时 url&lt; - &#34; http://www.cisco.com/c/en/us/products/a-to-z-series-index.html&#34; doc&lt; - htmlTreeParse(url,useInternal = TRUE)
我遇到了这个和另一篇关于这个主题的帖子,但没有解决我的问题。此代码以前有效。然后我意识到我在公司VPN上。我下了VPN并重新尝试了它的工作原理。因此,在VPN上可能是您获得上述错误的另一个原因。离开VPN解决了它。