【发布时间】:2020-08-28 01:49:45
【问题描述】:
library(stringr);
library(rvest);
denzel = read_html("https://www.imdb.com/filmosearch/?explore=title_type&role=nm0000243&ref_=filmo_ref_typ&sort=num_votes,desc&mode=detail&page=1&title_type=movie");
titles = denzel %>%
html_nodes(".lister-item-header a") %>%
html_text();
titles;
上面的代码获取了丹泽尔华盛顿的电影列表。 HTML 对象按预期工作。我得到了 50 部电影的字符串名称标题。
具体来说,我想解析对象中的以下子元素。
<meta itemprop="ratingValue" content="7.8" />
<meta itemprop="bestRating" content="10" />
<meta itemprop="ratingCount" content="383446" />
在上述情况下,我想为每个提取键和值...更具体地说,我知道键,所以我想获取关联的值...
meta = denzel %>%
html_nodes("meta") %>%
html_attr("itemprop");
meta;
这会返回部分内容,但不是我想要的。
下面的代码不起作用,是伪代码,
meta = denzel %>%
html_nodes("meta") %>%
html_attr("itemprop='ratingValue'");
理想情况下,meta(使用 html_node 或 html_nodes)会通过传入 itemprop 作为键来吐出内容属性值。
【问题讨论】: