//定位以 “ http://v ” 開頭的link List<WebElement> startLink = driver.findElements(By.xpath("//a[starts-with(@href,'http://v')]"));
//定位id含有 “ i ” link List<WebElement> containLink = driver.findElements(By.xpath("//a[contains(@id,'i')]")) ;
許多文檔上有end-with的API,但本人使用該函數提示為Invalid,尚未測試成功,故不寫入。
總結:
package demo.test; import java.util.List; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import com.framework.webdriver.DriverFactory; public class FindByXpath { WebDriver driver; @BeforeClass public void beforeClass(){ this.driver = new FirefoxDriver(); driver.get("http://www.baidu.com/"); } @Test public void getElementByXpath(){ try { //定位以 “ http://v ” 開頭的link List<WebElement> startLink = driver.findElements(By.xpath("//a[starts-with(@href,'http://v')]")); System.out.println("startLinkSize = "+startLink.size()); //定位id含有 “ i ” link List<WebElement> containLink = driver.findElements(By.xpath("//a[contains(@id,'i')]")); System.out.println("containLinkSize = "+containLink.size()); } catch (Exception e) { System.out.println(e); } } }
運行結果: