java - Jsoup 在类中获取 href

标签 java class href jsoup

我有这段 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");

希望这对您有所帮助!

关于java - Jsoup 在类中获取 href,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6829441/

相关文章:

java - 在输入参数是引用的情况下如何重用代码?

swift - Swift 类初始值设定项中的可选类初始值设定项参数

在另一个类上使用字符串

java.lang.ClassNotFoundException : org. springframework.boot.autoconfigure.logging.AutoConfigurationReportLoggingInitializer

javascript - Android Webview - 检测jquery文档准备就绪

java - 'String args[]'和 'public static void main(String[] args)'中的static的解释

Xcode - 相同的类名,两个目标

javascript - 单击链接时突出​​显示工具提示中的文本

html - 如何以编程方式将 href 设置为其他网站?

php - 通过 href 将变量传递给另一个 php