这是我的代码:

library(rvest)
library(XML)
library(xml2)
url_imb <- 'https://www.imdb.com/search/title/?count=100&release_date=2016,2016&title_type=feature'
web_page<-read_html(url_imb)

我想提取与adv_li_dr_0标记相关的所有Directors名称。

这是我所做的:
CSS选择器:
directors_0<-html_text(html_nodes(web_page,"p a"))

XPATH选择器:
directors_0<-html_attr(html_nodes(web_page,xpath='//p[@class=""]//a'),"href")

当然是不完整的。但是你能帮我吗?如何在href中提取与标签相关的元素。

最佳答案

我会考虑将css attribute = value选择器与contains运算符一起使用,以指定href属性必须包含子字符串adv_li_dr_。请注意,假设您要所有导演,我已将0删除。如果您只希望每部电影的第一位导演,则将0放在最后。请注意,这应该比xpath更快,更不易碎。

library(rvest)
library(magrittr)

url_imb <- 'https://www.imdb.com/search/title/?count=100&release_date=2016,2016&title_type=feature'
directors <-read_html(url_imb) %>% html_nodes('[href*=adv_li_dr_]')%>%html_text()

阅读:
  • Attribute selectors
  • 关于r - Web抓取R : extract names from `href` tags,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57909759/

    10-16 16:10