另一个提取器
在上一个练习中,我们构建了一个函数,可以从 H2 标题中提取文本内容。
这次来试试别的:我们想要提取某个页面上所有存在的链接。为此,需要调用两个 httr 函数:html_nodes(),其 css 参数设为 "a"(a 是链接的 HTML 标签),以及 html_attr(),它能从节点中提取指定属性——在这里是 "href",即链接地址。
已为您加载 purrr 和 rvest。工作区中仍可找到向量 urls。
本练习是课程的一部分
使用 purrr 的函数式编程进阶
练习说明
预填充
html_nodes(),将css参数设为"a"。创建
href()函数,它是html_attr()的一个预填充版本。组合
href()、get_a()和read_html(),构造一个新函数。将该新函数映射到向量
urls上。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create a partial version of html_nodes(), with the css param set to "a"
get_a <- ___(html_nodes, ___)
# Create href(), a partial version of html_attr()
href <- ___(___, name = "href")
# Combine href(), get_a(), and read_html()
get_links <- ___(___, ___, ___)
# Map get_links() to the urls list
res <- ___(urls, ___) %>%
set_names(urls)
# See the result
res