【发布时间】:2020-06-18 16:50:31
【问题描述】:
我正在尝试使用“rvest”从以下位置获取产品价格:https://www.lowes.com/pl/Lawn-garden-hand-tools-Outdoor-tools-equipment-Outdoors/4294612737?goToProdList=true&int_cmp=LawnGardenHandTools:C:Outdoors:Merch:shop_all_copy。我正在使用以下代码:
library(rvest)
library(tidyverse)
url <- "https://www.lowes.com/pl/Lawn-garden-hand-tools-Outdoor-tools-equipment-Outdoors/4294612737?goToProdList=true&int_cmp=LawnGardenHandTools:C:Outdoors:Merch:shop_all_copy"
html <- read_html(url)
price <- html %>%
html_node('body') %>%
xml_find_all("//span[contains(@class, 'h5 js-price v-spacing-mini art-pl-price')]") %>%
html_text() %>%
data.frame()
但是 - 这将返回一个空数据框。
任何建议将不胜感激。
【问题讨论】:
-
你在什么时候
read_html(或类似的)? -
道歉 - 在写出上面的例子时,我忘了包括那个阶段。我现在已经编辑了示例代码。
-
谢谢,这是 SO 中的一个常见错误:没有发布实际在控制台上运行的真实代码。这是一个简单且容易犯的错误,但它使故障排除变得更加困难:我们是否认为这是一个错字并忽略它,或者这是一个导致整个问题的问题?当我提出问题(SO 或其他 SE 站点)时,我尝试养成将代码粘贴到新的空 R 会话中并查看是否忘记了什么的习惯;不可避免地,每当我缩短该步骤时,我都会打错代码。
标签: html r xml web-scraping rvest