使用缺失数据刮取亚马逊客户评论

时间:2018-02-11 19:34:48

标签: r web-scraping amazon rvest

我想抓住亚马逊的客户评论,如果没有“缺失”信息我的代码工作正常,如果缺少部分数据,将已删除的数据转换为数据框不再有用(参数意味着不同行数)。

这是一个示例代码:

Collections.frequency

在这种情况下,“缺失”表示没有为多个客户评论提供作者信息( Ein Kunde 仅表示德语客户)。

有没有人知道如何解决这个问题?任何帮助表示赞赏。提前谢谢!

2 个答案:

答案 0 :(得分:1)

会说这是您的问题的答案(link

每个人都在 'div[id*=customer_review]'  然后检查作者是否有该值。

答案 1 :(得分:0)

根据提供的Nardack链接调整方法,我可以使用以下代码来搜索数据:

library(dplyr)
library(rvest)

get_reviews <- function(node){

  r.title <- html_nodes(node, ".a-color-base") %>%
    html_text() 

  r.author <- html_nodes(node, ".author") %>%
    html_text() 

  df <- data.frame(
    title = ifelse(length(r.title) == 0, NA, r.title),
    author = ifelse(length(r.author) == 0, NA, r.author), 
    stringsAsFactors = F)

  return(df)  
}

url <- read_html("https://www.amazon.de/product-reviews/3980710688/ref=cm_cr_dp_d_show_all_btm?ie=UTF8&reviewerType=all_reviews&pageNumber=42&sortBy=recent") %>% html_nodes("div[id*=customer_review]")
out <- lapply(url, get_reviews) %>% bind_rows()