【问题标题】:Extract HTML Tables from Multiple webpages Using R使用 R 从多个网页中提取 HTML 表格
【发布时间】:2014-07-21 17:22:36
【问题描述】:

您好,我已经进行了深入的研究并达到了这个程度。我要做的就是提取跨越许多网页的 HTML 表格。

我必须查询网站 sec.gov 的数据库,然后该表返回适当数量的结果(每个查询的大小和页数都不同)。例如:

链接:http://www.sec.gov/cgi-bin/srch-edgar

要给出的输入:

输入搜索字符串框: form-type=(8-k) ANDfiling-date=20140523

开始: 2014

结束: 2014

如何在不打开浏览器的情况下在 R 中完全做到这一点?

我正在分享我所做的一切

我尝试了很多包,最接近的是包 RCurl。但是在 getURL 函数中,我打开了浏览器,在浏览器中运行查询并将其粘贴到 getURL 中。它返回了一个很长的字符,其中包含可以循环并产生我想要的输出的 URL。所有这些信息都在输出的“中心”标签中。

现在我不知道如何从字符中间取出这些 URL。

另外,这不是我想要的。我想直接从 R 运行 Web 查询,并将各种 HTML 表输出直接输入到 R。这可能吗?

谢谢 米娜

【问题讨论】:

    标签: html r xml-parsing html-parsing


    【解决方案1】:

    是的,这是可能的。您将需要结合使用 RCurl 和 XML 包。您需要以编程方式在 URL 中生成查询参数(基于 HTML 表单),然后使用 getURL() 或 getURLContent()。有时,服务器会期待一个 HTTP POST,所以有postForm()。

    要解析结果,请使用getNodeSet() 查找 XML 包支持的 XPath 语言。我认为 XML 包中还有一个函数可以将 HTML 表解析为data.frame。

    你可能想投资这个book。

    【讨论】:

    • 谢谢迈克尔,我会买这本书,但我通常不处理 XML。如何全面了解 R 函数?
    猜你喜欢
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    相关资源
    最近更新 更多