JSoup 是一个 Java 库,用于解析 HTML 文档并提取数据。它提供了一种非常直观的方式来遍历和操作 HTML 文档的元素。如果你想要仅提取段落(<p>
标签)中的超链接(href
属性),你可以使用 JSoup 的选择器语法和 API 来实现。
以下是一个使用 JSoup 提取段落中 href
属性的示例代码:
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class JSoupExample {
public static void main(String[] args) {
String html = "<html><head><title>Sample Title</title></head>"
+ "<body><p><a href='http://example.com/1'>Link 1</a></p>"
+ "<p><a href='http://example.com/2'>Link 2</a></p>"
+ "<div><a href='http://example.com/3'>Link 3</a></div>"
+ "</body></html>";
Document doc = Jsoup.parse(html);
Elements paragraphs = doc.select("p"); // 选择所有的 <p> 标签
for (Element paragraph : paragraphs) {
Elements links = paragraph.select("a[href]"); // 在每个 <p> 标签内选择带有 href 属性的 <a> 标签
for (Element link : links) {
String href = link.attr("href"); // 获取 href 属性的值
System.out.println(href);
}
}
}
}
如果你在使用 JSoup 提取 href
属性时遇到问题,可能的原因包括:
Jsoup.parse(html, "", Parser.htmlParser().setTrackErrors(100))
来解析 HTML,并检查错误信息。通过上述方法,你应该能够解决在使用 JSoup 提取段落中 href
属性时遇到的问题。
领取专属 10元无门槛券
手把手带您无忧上云