我有这段 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/