【问题标题】:Selinium web driver- Unable to locate hrefSelenium webdriver-无法找到href
【发布时间】:2016-08-13 10:51:57
【问题描述】:
我试图使用 selinium webdriver 在下面的代码(<a data-flyout-target="handbags" title="Taschen" href="#">Taschen</a>)中找到一个链接“Taschen”。谁能指导我
<a data-flyout-target="handbags" title="Taschen" href="#">Taschen</a>
【问题讨论】:
标签:
selenium
webdriver
href
【解决方案1】:
以下是您的选择:
By.className
By.cssSelector
By.id
By.linkText
By.name
By.partialLinkText
By.tagName
By.xpath
所以假设“Taschen”是部分链接文本
WebElement aLink = driver.findElement(By.partialLinkText("Taschen"));
如果您没有为页面加载和适当的隐式等待而烦恼,那么这可能会更好
WebDriverWait wait = new WebDriverWait(driver, 30);
WebElement aLink = wait.until(
ExpectedConditions.elementToBeClickable(By.partialLinkText("Taschen"))
);
aLink.click();
你没有使用java?更新您的问题以显示您的代码并为您的问题添加语言标签。您的大脑不是网络连接设备,我们只知道您告诉我们什么。 :-)
【解决方案2】:
您也可以使用 XPath,如下所示:-
//a[@title='Taschen']/text()
代码如下:-
WebElement tash = driver.findElement(By.xpath("Taschen"));
如果您需要获取文本,则可以使用:-
String tash = driver.findElement(By.xpath("Taschen")).getText();
你也可以在 XPath 中使用 contains 函数
//a[contains(.,'Taschen')]
希望对你有帮助:)