请参考以下示例代码:
<div class="menu">
<a href="one.html">One</a>
<a href="two.html">Two</a>
<button type="button">Three</button>
<button type="button">Four</button>
<div class="menu2">
<a href="five.html">Five</a>
<a href="six.html">Six</a>
</div>
<div class="menu3">
<a href="seven.html">Seven</a>
<button type="button">Eight</button>
</div>
</div>
我试图使用单个xpath找到'a'标签和'button'标签。
我可以使用cssSelector和以下代码来做到这一点:
List<WebElement> list = d.findElements(By.cssSelector("div[class='menu'] a, div[class='menu'] button"));
for (WebElement l: list) {
System.out.println(l.getText());
}
但我想用xpath做。
尝试在XPath下面使用以匹配a
和button
:
//div[@class="menu"]//*[name()=("a" or "button")]
要么
//div[@class="menu"]//*[self::a or self::button]
你也可以使用Jsoup来获取所有数据。这里有一些例子:
Document doc = Jsoup.parse(content);
Elements elements = doc.select("div.menu a");
for (Element element : elements) {
String url = element.attr("href");
}