r - 如何在 R 中使用“显示更多”属性从网站上抓取文本?
问题描述
你好堆栈溢出社区,
有一个包含财务数据的网站 Investing.com,它提供了某些经济变量的数据点和预测。
对于更感兴趣的人,我想抓取的信息的确切 URL 在这里。
我的目标是收集这些信息;但是,显示信息的表格最后包含“显示更多”属性。当我单击它时,一次会出现六个新元素。我正在寻找一种方法,可以一次展开五十个或更多元素,然后在 R 中刮取它们。
我知道如何从网站上抓取文本,但我不知道如何解决“显示更多”属性。
我曾尝试修改网站的 Java 代码,但未成功。我对Java的了解还很有限。
感谢您的时间!
解决方案
我想这就是你想要的。
library(rvest)
url <- "https://www.investing.com/economic-calendar/eia-crude-oil-inventories-75"
page <- read_html(url)
nodes <- html_nodes(page, "table") # you can use Selectorgadget to identify the node
table <- html_table(nodes[[1]]) # each element of the nodes list is one table that can be extracted
head(table)
结果:
Release Date Time Actual Forecast Previous
1 Dec 27, 2019 11:00 -5.474M -1.724M -1.085M NA
2 Dec 18, 2019 10:30 -1.085M -1.288M 0.822M NA
3 Dec 11, 2019 10:30 0.822M -2.763M -4.856M NA
4 Dec 04, 2019 10:30 -4.856M -1.734M 1.572M NA
5 Nov 27, 2019 10:30 1.572M -0.418M 1.379M NA
6 Nov 20, 2019 10:30 1.379M 1.543M 2.219M NA
推荐阅读
- javascript - 除非我检查元素,否则 C# Selenium 无法访问 iframe 中的元素
- java - 在没有管理员权限的情况下更改 Windows 10 中的 Java_Home 路径
- python - 使用应用功能在 Dask 中添加两列
- java - Spring @Valid 注解不起作用
- pandas - 如何将 1 和 0 的行转换为新的 int 列
- wordpress - 我如何将 URL 的特定部分重写为查询参数而不影响 URL 的其余部分
- javascript - 如何用 \" 更新这个 JSON 字符串,使它可以是 JSON.parse()?
- mysql - 2个PK和2个FK之间的这种关系是否存在?
- php - CryptoJS.enc.Hex.stringify PHP 等价物
- swiftui - SwiftUI 在 EditMode 中隐藏列表中的汉堡图标