【问题标题】:Using rvest to scrape GoodReads pages使用 rvest 抓取 GoodReads 页面
【发布时间】:2015-03-11 21:14:19
【问题描述】:

我正在尝试在 goodreads 上抓取评分和评论数,但得到了 NA 结果。这是为什么呢?

SelectorGadget 为悬停时的平均评分找到“跨度跨度”,但在底部找不到“有效路径”。

在其他网站(例如 IMDB、theatlantic.com)上使用相同的方法效果很好。

这是我的代码和结果(我也尝试用 html_tag 替换 html_text)

 Rating<- html("http://www.goodreads.com/book/show/22444789-delicious-foods")

Rating %>%
 html_node("span span") %>%
 html_text () %>%
 as.numeric()
[1] NA
Warning message:
In function_list[[k]](value) : NAs introduced by coercion

【问题讨论】:

  • 抓取该网站违反了他们的terms of service。任何帮助您的人都违反了该 TOS,而您也违反了该 TOS。他们有一个API。如果这还不够,您应该先联系他们以获得使用他们数据的明确许可。
  • 好吧,我想我会坚持使用他们的 API
  • 很高兴看到我们这里有白骑士 ToS 的用户,哈哈,真是个笑话

标签: html r web-scraping rvest


【解决方案1】:

我在 Goodreads 网站上使用 selectorgadget 没有任何成功,但有时您只需要查看 html 源代码并通过这种方式找到您要查找的内容。

在这种情况下,您可以使用 .average 类选择器:

Rating %>%
 html_node(".average") %>%
 html_text %>%
 as.numeric

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-20
    • 2020-07-18
    • 2019-02-17
    • 2022-01-03
    • 1970-01-01
    • 1970-01-01
    • 2017-03-28
    • 2019-02-16
    相关资源
    最近更新 更多