滚动到一个元素并单击它

San*_*ari 5 firefox r rselenium

我正在尝试从Flipkart网站上抓取数据。该网页的链接如下:https : //www.flipkart.com/mi-a1-black-64-gb/product-reviews/itmexnsrtzhbbneg?aid=overall&pid=MOBEX9WXUSZVYHET

我需要通过单击网页的NEXT按钮来自动导航到NEXT页面。下面是我正在使用的代码

nextButton <-remDr$findElement(value ='//div[@class="_2kUstJ"]')$clickElement()
Run Code Online (Sandbox Code Playgroud)

错误

Selenium message:Element is not clickable at point
Run Code Online (Sandbox Code Playgroud)

我什至尝试使用以下代码按照许多stackoverflow问题的建议滚动网页

remDr$executeScript("arguments[0].scrollIntoView(true);", nextButton)
Run Code Online (Sandbox Code Playgroud)

但是这段代码也给出了错误

 Error in checkError(res) : Undefined error in httr call. httr output: No method for S4 class:webElement 
Run Code Online (Sandbox Code Playgroud)

请提出解决方案。我正在使用firefox browserselenium自动使用R编程。

小智 0

如果您不介意使用 Chrome 驱动程序,则可以使用以下代码:

eCaps <- list(chromeOptions = list(
  args = c('--headless', '--disable-gpu', '--window-size=1880,1000',  "--no-sandbox", "--disable-dev-shm-usage")
))

remDr <- rsDriver(port = 4565L,browser = "chrome",extraCapabilities = eCaps)
remCl <- remDr[["client"]]

remCl$navigate("https://www.flipkart.com/mi-a1-black-64-gb/product-reviews/itmexnsrtzhbbneg?aid=overall&pid=MOBEX9WXUSZVYHET")

remCl$findElement(using = "css selector", "._3fVaIS > span:nth-child(1)")$clickElement()
Run Code Online (Sandbox Code Playgroud)