无法单击并选择动态下拉列表中的值。请找到下面的代码-
public static void main(String[] args)
{
// TODO Auto-generated method stub
//System.setProperty("webdriver.chrome.driver", "C:\\Chrome Driver\\chromedriver.exe");
//WebDriver Driver = new ChromeDriver();
WebDriver Driver = new FirefoxDriver();
Driver.get("http://www.spicejet.com/");
Driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS)
Driver.findElement(By.xpath(".//*[@id='ctl00_mainContent_ddl_originStation1_CTXT']")).click();
}另外,我注意到Eclipse在打开Spicejet.com后继续运行,并且没有单击任何下拉列表。要停止执行,我需要手动单击Terminate按钮,否则它将不会停止和持续很长时间(我相信4-6小时)。
发布于 2017-01-17 05:37:54
您可以使用下面的代码来选择任何值,在此代码中,我选择了Goa (GOI)。要了解更多信息,它不是下拉列表。这是一个网络表格。
WebDriver driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.get("http://www.spicejet.com/");
driver.findElement(By.id("ctl00_mainContent_ddl_originStation1_CTXTaction")).click();
driver.findElement(By.xpath("//div[@id='dropdownGroup1']/div/ul[2]/li[4]/a")).click();发布于 2017-01-17 05:30:37
当我打开那个网站时,它有时似乎在等待用户选择移动或桌面站点。这就是挂起来的原因吗?
如果我单击“过去”(使用Selenium代码或手动):
x1path = "//a[@class='desktop-view-button']"
WebDriverWait(driver,15).until(EC.presence_of_element_located((By.XPATH,x1path)))
driver.find_element_by_xpath(x1path).click()此代码打开菜单:
x1path = '//*[@id="ctl00_mainContent_ddl_originStation1_CTXTaction"]'
WebDriverWait(driver,15).until(EC.presence_of_element_located((By.XPATH,x1path)))
driver.find_element_by_xpath(x1path).click()但是,您必须选择您想要的下拉元素(我不认为您的代码会这样做)。
x1path = '//div[@id="dropdownGroup1"]/div/ul/li[6]/a'
WebDriverWait(driver,15).until(EC.presence_of_element_located((By.XPATH,x1path)))
driver.find_element_by_xpath(x1path).click()ul/li[6]在第一列(Belagavi)中选择第6个元素。
https://stackoverflow.com/questions/41688662
复制相似问题