【问题标题】:Move to new pop-up window using Rselenium使用 Rselenium 移动到新的弹出窗口
【发布时间】:2018-01-30 13:57:21
【问题描述】:

我有以下 Rselenum 代码:​​

library(RSelenium)

remDr <- remoteDriver(remoteServerAddr = "192.168.99.100", port = 4445L, browserName = "chrome")
remDr$open()

# Simulate browser session and fill out form
remDr$navigate("https://oss.uredjenazemlja.hr/public/lrServices.jsp?action=publicLdbExtract")

remDr$findElement(using = "xpath", 
                  "//*[@id='x-auto-29']/input")$sendKeysToElement(list("Beli Manastir", key = "enter"))
Sys.sleep(1L)
remDr$findElement(using = "xpath", 
                  "//*[@id='x-auto-30']/input")$clickElement()
Sys.sleep(1L)
remDr$findElement(using = "xpath", 
                  "//*[@id='x-auto-30']/input")$sendKeysToElement(list("Baranjsko", key = "enter"))
Sys.sleep(1L)
remDr$findElement(using = "id", 
                  "x-auto-32")$sendKeysToElement(list("1"))
Sys.sleep(1L)
remDr$findElement(using = "xpath", 
                  "//*[@id='x-auto-33']/input")$clickElement()
Sys.sleep(1L)
remDr$findElement(using = "xpath", 
                  "//*[@id='x-auto-35']/div[2]")$clickElement()
Sys.sleep(1L)
remDr$findElement(using = "xpath", 
                  "//*[@id='x-auto-14']/tbody/tr/td[2]/em/button")$clickElement()

如您所见,弹出了新的“窗口”。如果我尝试在新窗口中选择任何元素,但它会返回并出错。我怎样才能下载验证码图片或在文本框中写一些东西?我尝试了 Windows 处理程序,但它不是一个新窗口。

编辑:

我在几个地方找到了我应该使用 javascript 来单击隐藏元素的地方。我试过了:

script <- "return document.getElementById('x-auto-135').hidden;"
remDr$executeScript(script, args = list())

但得到一个错误:

Error:   Summary: UnknownError
     Detail: An unknown server-side error occurred while processing the command.
     class: java.lang.NullPointerException
     Further Details: run errorDetails method

【问题讨论】:

    标签: r web-scraping httr rselenium


    【解决方案1】:

    我终于找到了解决办法:

    remDr$findElement(
      using = "css selector",
      ".x-window input[class=' x-form-field x-form-text ']")$sendKeysToElement(list("ded24", key = "enter"))
    

    【讨论】:

      猜你喜欢
      • 2023-03-04
      • 1970-01-01
      • 2012-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-28
      相关资源
      最近更新 更多