我想使用 rvest 包从 Investing.Com 获取值。
URL="https://www.forexfactory.com/calendar?day=Aug30.2023"
在HTML中,我需要的值放置在span class id和div之间。 html 代码如下所示:
library(rvest)
doc <- '<div id="economicCurrentTime" class="ecoCurrentTime ">
<span class="grayClockIcon"> </span>Current Time:
<span id="currentTime" class="bold blackFont" data-datetime="2023/09/01 19:27:02">19:27</span>
<span id="timeZoneGmtOffsetFormatted">(GMT -4:00)</span>
<span class="dropDownArrowGray"></span> </div>'
我想收集值“(GMT -4:00)”。如下图所示。
您可以使用 xpath(或 css)并仅选择 id 等于“timeZoneGmtOffsetFormatted”的“span”节点。
library(rvest)
library(dplyr)
h <- read_html(doc)
html_elements(h, xpath='.//span[@id="timeZoneGmtOffsetFormatted"]') %>%
html_text()
#or
#html_elements(h, 'span[id="timeZoneGmtOffsetFormatted"]') %>% html_text()
#[1] "(GMT -4:00)"