我创建了代码,以从沃尔玛网站抓取4K智能电视的评论。我在抓取时遇到的问题是:
1)在各页面之间导航时,我看不到“ page_num”在R中循环
2)我只能抓取第一页评论,而输出中的其余数据将被相同的第一页评论重复
3)爬网数据时循环不起作用
我尝试了两种方法,发现以上一种方法有效,但无法在页面之间循环
library(dplyr)
library(rvest)
library(purrr)
url<- "https://www.walmart.com/reviews/product/709887014")
map_df(1:20,function(i){
cat(".")
TV<-read_html(sprintf(url,i))
data.frame(title=html_text(html_nodes(TV,".review-title")),
review=html_text(html_nodes(TV,".review-body-text")),
stars=gsub(" Points", "", html_text(html_nodes(TV,".stars-small"))),
stringsAsFactors=FALSE)
})->4K_TVreview
dplyr::glimpse(4K_TVreview)
我希望结果显示在页面的3列中: 标题 星星 评论
即使在跨页面导航时源链接没有更改,也请帮助我如何在跨页面导航和爬网数据。
感谢您的所有努力。