![](/img/trans.png)
[英]Locating elements in <li> using selenium webdriver with java
[英]I am having trouble in locating search bus button in red bus site using selenium webdriver with java
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver","./drivers/chromedriver");
WebDriver driver=new ChromeDriver();
driver.get("https://www.redbus.in/");
driver.findElement(By.id("search_btn")).click();
}
Html 代碼:[ https://i.stack.imgur.com/9mdsv.png][https://i.stack.imgur.com/ODjxk.png]
我無法單擊搜索總線按鈕。
根據您共享的用於定位Search Buses按鈕並調用click()
的HTML ,您可以使用以下任一代碼行:
cssSelector
driver.findElement(By.cssSelector("button.fl.button#search_btn")).click();
xpath
driver.findElement(By.xpath("//button[@class='fl button' and @id='search_btn']")).click();
使用Selenium-Java Client v3.9.1 、 GeckoDriver v0.19.1和Firefox Quantum v58.0.2,這段代碼在我看來非常完美:
System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
WebDriver driver = new FirefoxDriver();
driver.get("https://www.redbus.in/");
new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("button.fl.button#search_btn"))).click();
System.out.println("Search button clicked");
driver.quit();
控制台輸出:
Search button clicked
快照:
你可以試試這個xpath:
driver.findElement(By.xpath("//section[@id='search']
//button[@id='search_btn']")).click();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.