Соскреб в Google Play: как вы можете получить количество голосов за каждый отзыв в R? - PullRequest
0 голосов
/ 07 ноября 2019

Я занимаюсь поиском в Интернете отзывов о приложении Google Play, но не могу получить количество голосов. Я указываю код: likes <- html_obj%>% html_nodes (". XjKiLb")%>% html_attr ("aria-label") , и я не получаю никакого значения. Как это можно сделать?

Получить соскоб голоса

enter image description here

ПОЛНЫЙ КОД

#Loading the rvest package
library(rvest)
library(magrittr) # for the '%>%' pipe symbols
library(RSelenium) # to get the loaded html of 


url <- 'https://play.google.com/store/apps/details?id=com.gospace.parenteral&showAllReviews=true'

# starting local RSelenium (this is the only way to start RSelenium that is working for me atm)
selCommand <- wdman::selenium(jvmargs = c("-Dwebdriver.chrome.verboseLogging=true"), retcommand = TRUE)
shell(selCommand, wait = FALSE, minimized = TRUE)
remDr <- remoteDriver(port = 4567L, browserName = "firefox")
remDr$open()

# go to website
remDr$navigate(url)

# get page source and save it as an html object with rvest
html_obj <- remDr$getPageSource(header = TRUE)[[1]] %>% read_html()

likes <- html_obj %>% html_nodes(".xjKiLb") %>% html_attr("aria-label")

Что возвращает меня

NA NA NA

Что я хочу вернуть

3 3 2

1 Ответ

0 голосов
/ 07 ноября 2019

Возможно, вы используете гаджет селектора, чтобы получить селектор CSS. Как и вы, я пытался это сделать, но css, возвращаемый гаджетом селектора, неверен.

Изучив HTML-код страницы, я понял, что в теге с * 1003 содержится правильный элемент* как вы можете видеть на этом изображении.

enter image description here

Таким образом, код, который вы должны использовать, следующий:

html_obj %>% html_nodes('.jUL89d') %>% html_text()

Моя личная рекомендация - всегда проверять исходный код, чтобы подтвердить вывод гаджета селектора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...