关于如何使用 XML 包中的 readHTMLTable 有很好的答案,我用常规的 http 页面做到了,但是我无法解决 https 页面的问题。
我正在尝试阅读此网站上的表格(网址字符串):
library(RTidyHTML)
library(XML)
url <- "https://ned.nih.gov/search/ViewDetails.aspx?NIHID=0010121048"
h = htmlParse(url)
tables <- readHTMLTable(url)
但我收到此错误:文件https ://ned.nih.gov/search/Vi...不存在。
我试图通过这个(下面的前 2 行)解决 https 问题(从使用谷歌找到解决方案(比如这里:http ://tonybreyal.wordpress.com/2012/01/13/ra-quick-scrape-of -来自 boxofficemojo-com/ 的票房最高的电影)。
这个技巧有助于查看更多页面,但任何提取表格的尝试都不起作用。任何建议表示赞赏。我需要像组织、组织标题、经理这样的表字段。
#attempt to get past the https problem
raw <- getURL(url, followlocation = TRUE, cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl"))
head(raw)
[1] "\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;
...
h = htmlParse(raw)
Error in htmlParse(raw) : File ...
tables <- readHTMLTable(raw)
Error in htmlParse(doc) : File ...