Я не могу заставить Rselenium перевернуть страницу в разделе Amazon Review, который я пытаюсь очистить. Ниже мой код. Я пробовал почти все возможные комбинации CSS и xpath. Есть предположения?
replicate(100,
{
remDr$navigate("https://www.amazon.com/Eagles-Nest-Outfitters-DoubleNest-Portable/product-reviews/B00K30GXK8/ref=cm_cr_dp_d_show_all_btm?ie=UTF8&reviewerType=all_reviewshttps://www.amazon.com/Eagles-Nest-Outfitters-DoubleNest-Portable/product-reviews/B00K30GXK8/ref=cm_cr_dp_d_show_all_btm?ie=UTF8&reviewerType=all_reviews")
webElem <- remDr$findElement("css", "body")
webElem$sendKeysToElement(list(key = "end"))
morereviews <- remDr$findElement(using = 'css selector', ".a-last a")
morereviews$clickElement()
Sys.sleep(4)
reviews <- xml2::read_html(remDr$getPageSource()[[1]])%>%
rvest::html_nodes(".review-text")%>%
dplyr::data_frame(reviews = .)
})





В этом случае вам не нужно использовать RSelenium, а только rvest. Во-первых, вы можете очистить обзоры одной из этих страниц, читая html напрямую. Во-вторых, обратите внимание, что каждый раз, когда вы переворачиваете страницу в разделе «Обзоры», URL-адрес также изменяется (фактически, он указывает номер страницы, которую вы видите). Поэтому вы можете использовать цикл, в котором вы меняете URL-адрес и очищаете все отзывы:
reviews <- lapply(1:100,
function(i){
url <- paste0("https://www.amazon.com/Eagles-Nest-Outfitters-DoubleNest-Portable/product-reviews/B00K30GXK8/ref=cm_cr_getr_d_paging_btm_next_",i,"?ie=UTF8&reviewerType=all_reviewshttps%3A%2F%2Fwww.amazon.com%2FEagles-Nest-Outfitters-DoubleNest-Portable%2Fproduct-reviews%2FB00K30GXK8%2Fref%3Dcm_cr_dp_d_show_all_btm%3Fie%3DUTF8&reviewerType=all_reviews&pageNumber = ",i)
xml2::read_html(url) %>%
rvest::html_nodes(".review-text") %>%
rvest::html_text() %>%
dplyr::data_frame(reviews = .)
})
(reviews <- do.call("rbind", reviews))
Привет, Стек. Есть ли шанс дать мне совет, как заставить Rselenium переходить по странице? Меня эта проблема беспокоит.
Спасибо, pol! У меня есть склонность к чрезмерному усложнению. Код работает! Любопытно, знаете ли вы, как сделать щелчок в RSelenium для будущего использования?