2014-11-17 14 views
7

Jak można wchodzić w interakcje z rozwijanymi polami w RSelenium? W szczególności mogę wybrać pole rozwijane za pomocą findElement, ale w jaki sposób wybrać opcję z nim?rozwijane pola w RSelenium

Odpowiedz

11

tutaj jest kod, aby wybrać rozwijaną listę na podstawie xpath.

Ponieważ menu rozwijane znajduje się wewnątrz elementu iframe, muszę najpierw przejść do tego elementu iframe. Prawdopodobnie jest o wiele łatwiej w twojej sytuacji.

Nowość w RSelenium, sprawdź numer quick start tutorial, chcesz dowiedzieć się więcej o tej funkcji, zobacz pdf documentation.

require(RSelenium) 
remDr <- remoteDriver(remoteServerAddr = "localhost", port = 4444, browserName = "firefox") 

remDr$open() 
remDr$navigate("http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select") 

iframe <- remDr$findElement(using='id', value="iframeResult") 
remDr$switchToFrame(iframe) 

# change audi to whatever your option value is 
option <- remDr$findElement(using = 'xpath', "//*/option[@value = 'audi']") 
option$clickElement() 

enter image description here

+0

Nie przełączać ramy, a ja bezpośrednio używać XPath aby zmienić opcję 'Select', to works.Thanks dużo. – chunjin