首页 > 解决方案 > 使用 R 抓取应用程序评论:xpath 问题

问题描述

我正在尝试从 Play 和应用商店(应用名称、评级、完整的评论文本、用户名)中抓取应用评论,但遇到了一些问题。我读了这篇文章,但在使用 RSelenium 时遇到了很多困难,所以我想知道我是否可以用更简单的方法来做。使用 XPath 时,我可以获得应用程序的名称,但不能获得评论文本或评级。我正在为用户和评论数据获取“字符(0)”。我的另一个问题是,在 Play 商店中要查看更多评论,您必须单击“阅读更多”,我想知道抓取是否会在页面上加载的内容处停止,如果是,如何获得完整的评论集。

我在今天之前有 0 次网络抓取经验,如果这很明显,很抱歉。

library(rvest)
library(RSelenium) 
library(xml2)
library(stringr)

url <- 'https://play.google.com/store/apps/details?id=com.woebot&hl=en_US'

webpage <- read_html(url)
Name_data_html <- webpage %>% html_nodes(xpath='/html/body/div[1]/div[4]/c-wiz/div/div[2]/div/div[1]/div/c-wiz[1]/c-wiz[1]/div/div[2]/div/div[1]/c-wiz[1]/h1/span')
Name_data <- html_text(Name_data_html)
head(Name_data)


User_data_html <- webpage %>% html_nodes(xpath='/html/body/div[1]/div[4]/c-wiz[3]/div/div[2]/div/div[1]/div/div/div[1]/div[2]/div/div[2]/div[1]/div[1]/span')
User_data <- html_text(User_data_html)
head(User_data)

Review_data_html <- webpage %>% html_nodes(xpath='/html/body/div[1]/div[4]/c-wiz[3]/div/div[2]/div/div[1]/div/div/div[1]/div[2]/div/div[2]/div[2]')
Review_data <- html_text(Review_data_html)
head(Review_data)

product_data <- data.frame(Name = Name_Data, User = User_data,Review=Review_data)
str(product_data)

标签: rxpathweb-scraping

解决方案


您已经调用了 RSelenium,但您使用的是 rvest 命令。如果您尝试抓取的网站字段不是使用 javascript 生成的,则这些工作正常,这里不是这种情况。


推荐阅读