簡體   English   中英

我在使用 selenium webdriver 和 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.1GeckoDriver v0.19.1Firefox 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM