1
            driver.FindElement(By.Name("zipcode")).Clear();
            driver.FindElement(By.Name("zipcode")).SendKeys(zipcode);
            driver.FindElement(By.Name("Go")).Click();

            driver.FindElements(By.TagName("A").  //<---- ?????????

我有一些我开始的 Selenium API 代码。我的目标是在属性 href 中使用字符串“alertsepy”和刺痛“sevendwarves”获​​取所有“A”标签,并将所有这些元素返回到一个数组中,以便我可以做一些进一步的处理。我开始了代码,但我真的不太确定如何一直到那里。有谁知道如何使用 Selenium 进行此类查询。

亲切的问候!

4

2 回答 2

7

您应该使用 css 选择器:

IList<IWebElement> elements = driver.findElements(By.cssSelector("a[href*=alertsepy],a[href*=sevendwarves]")

此查询将返回具有包含alertsepySevendwarves两个字符串a的属性的节点:href

<a href="alertsepy.html" > </a>
<a href="sevendwarves.html" > </a>
<a href="http://sevendwarves.org/alertsepy.html" > </a>

或者您可以使用:

IList<IWebElement> elements = driver.findElements(By.cssSelector("a[href*=alertsepy][href*=sevendwarves]")    

此查询将返回具有包含alertsepySevendwarves字符串属性的a节点:href

<a href="http://sevendwarves.org/alertsepy.html" > </a>

有关普遍可用的 css 选择器的列表,请参阅w3c css 选择器。有关 Selenium 查询类型中可用的列表,请参阅定位 UI 元素

于 2012-04-29T08:57:43.340 回答
0
List<WebElement> anchortaglist = driver.find Elements(By.Tag Name('a');
于 2016-03-01T09:50:51.547 回答