我有我需要解析的html代码
<a class="sushi-restaurant" href="/greatSushi">Best Sushi in town</a>
我知道有一个jsoup的示例,您可以在页面中获取所有链接,例如

Elements links = doc.select("a[href]");
for (Element link : links) {
print(" * a: <%s>  (%s)", link.attr("abs:href"),
trim(link.text(), 35));
}

但是我需要一段代码,可以为我返回该特定类的href。

多谢你们

最佳答案

您可以按类别选择元素。本示例查找带有sushi-restaurant类的元素,然后获取第一个结果的绝对URL。

确保在解析HTML时,指定基本URL(从中提取文档)以允许jsoup确定链接的绝对URL是什么。

public static void main(String[] args) {
    String html = "<a class=\"sushi-restaurant\" href=\"/greatSushi\">Best Sushi in town</a>";
    Document doc = Jsoup.parse(html, "http://example.com/");
    // find all <a class="sushi-restaurant">...
    Elements links = doc.select("a.sushi-restaurant");
    Element link = links.first();
    // 'abs:' makes "/greatsushi" = "http://example.com/greatsushi":
    String url = link.attr("abs:href");
    System.out.println("url = " + url);
}

较短的版本:
String url = doc.select("a.sushi-restaurant").first().attr("abs:href");

希望这可以帮助!

08-16 10:17