使用rvest提取链接嵌套信息时links变量返回NA的问题
解决rvest提取链接返回NA的问题
你代码里links一直返回NA,核心问题是找错了属性——h2是HTML标签,不是.title元素的属性,商品的跳转链接其实存在于.title对应的<a>标签的href属性里。
修复后的完整代码:
library("robotstxt") library("dplyr") library("rvest") url<-"https://www.car.gr/classifieds/cars/?fs=1&condition=used&offer_type=sale&modified=15&st=private" # 小优化:paths_allowed只需要传域名,不用带后续查询参数 paths_allowed(domain = "https://www.car.gr") page<-read_html(url) Title<-page %>% html_nodes(".title") %>% html_text() Price<-page %>% html_nodes(".price-fmt") %>% html_text() # 关键修复:获取a标签的href属性,替换原来的"h2" links<-page %>% html_nodes(".title") %>% html_attr("href") %>% paste0("https://www.car.gr", .)
补充说明:
- 如果实际网页里
.title是<h2>标签,链接嵌套在<h2>内部的<a>标签里,那要把选择器改成.title a再取href:
你可以用浏览器F12打开开发者工具,查看目标元素的层级结构来确认具体选择器。links<-page %>% html_nodes(".title a") %>% html_attr("href") %>% paste0("https://www.car.gr", .)
内容的提问来源于stack exchange,提问作者Spink
相关产品推荐
相关产品推荐

