在以下网站上:https://www.bhtelecom.ba/index.php?id=7226&a=new 我想在下拉窗口(" Tuzlanski(035)")中选择第二个值,然后点击"萨拉热窝(033)"。我想用RSelenium做到这一点。
我尝试了10种不同的解决方案,我在stackoverflow上找到了但不是它的工作原理。我认为这是因为它是由javascript生成的。
我尝试过的解决方案之一:
remDr <- remoteDriver(remoteServerAddr = "192.168.99.100", port = 4445L,
browserName = "chrome")
remDr$open()
remDr$navigate("https://www.bhtelecom.ba/index.php?id=7226&a=new")
option <- remDr$findElement(using = 'xpath', "//select[@id='di']/option[@value='035']")
option$clickElement()
答案 0 :(得分:1)
首先,您必须单击输入字段:
input <- remDr$findElement(using = 'xpath', "//input[@class = 'select-dropdown']")
input$clickElement()
然后选项将可见,您可以使用右xPath
选择它们:
option <- remDr$findElement(using = 'xpath', "//span[contains(., 'Tuzlanski (035)')]")
option$clickElement()
您可能需要使用此功能:
Sys.sleep(5) # wait 5 seconds
如果脚本太快并且会在下拉列表中尝试选择下拉元素。
摘要代码:
input <- remDr$findElement(using = 'xpath', "//input[@class = 'select-dropdown']")
input$clickElement()
Sys.sleep(5) # wait 5 seconds
option <- remDr$findElement(using = 'xpath', "//span[contains(., 'Tuzlanski (035)')]")
option$clickElement()