【问题标题】:Scrape all div tags id (not their value) with similar format用类似的格式刮掉所有 div 标签 id(不是它们的值)
【发布时间】:2019-10-20 19:06:07
【问题描述】:
我有一个带有div html 标签的内部公司html 网页,其格式如下:
<div id="B4_6_2019">
<div id="B3_6_2019">
我想提取所有的 id 名称,所以最终结果是
B4_6_2019
B3_6_2019
我该怎么做? (id名称都是日期)
【问题讨论】:
标签:
html
r
web-scraping
rvest
【解决方案1】:
尝试做
library(dplyr)
library(rvest)
url %>%
read_html() %>%
html_nodes("div") %>%
html_attr("id") %>%
grep("^B\\d+_\\d+_\\d+", ., value = TRUE)
【解决方案2】:
也尝试属性 = 值 css 选择器,以运算符结尾,以匹配 id 值字符串末尾的子字符串
library(rvest)
page <- read_html("url")
id<- page %>%
html_nodes("[id$='_2019']") %>%
html_attr(., "id")