jsoup - 使用 URL

  • 简述

    以下示例将展示可以提供 html 页面中存在的相对和绝对 URL 的方法。
  • 句法

    
    String url = "http://www.cainiaoya.com/";
    Document document = Jsoup.connect(url).get();
    Element link = document.select("a").first();         
    System.out.println("Relative Link: " + link.attr("href"));
    System.out.println("Absolute Link: " + link.attr("abs:href"));
    System.out.println("Absolute Link: " + link.absUrl("href"));
    
    在哪里
    • document − 文档对象表示 HTML DOM。
    • Jsoup - 连接到 url 并获取 html 内容的主类。
    • link − 元素对象表示代表锚标签的html 节点元素。
    • link.attr("href")- 提供存在于锚标记中的 href 值。它可以是相对的,也可以是绝对的。
    • link.attr("abs:href") - 在针对文档的基本 URI 进行解析后提供绝对 url。
    • link.absUrl("href") - 在针对文档的基本 URI 进行解析后提供绝对 url。
  • 描述

    Element 对象代表一个 dom elment,并提供获取 html 页面中存在的相对和绝对 URL 的方法。
  • 例子

    使用您在 C:/> jsoup 中选择的任何编辑器创建以下 Java 程序。
    JsoupTester.java
    
    import java.io.IOException;
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.nodes.Element;
    public class JsoupTester {
       public static void main(String[] args) throws IOException {
       
          String url = "http://www.cainiaoya.com/";
          Document document = Jsoup.connect(url).get();
          Element link = document.select("a").first();
          System.out.println("Relative Link: " + link.attr("href"));
          System.out.println("Absolute Link: " + link.attr("abs:href"));
          System.out.println("Absolute Link: " + link.absUrl("href"));
       }
    }
    
  • 验证结果

    使用编译类 javac 编译器如下:
    
    C:\jsoup>javac JsoupTester.java
    
    现在运行 JsoupTester 以查看结果。
    
    C:\jsoup>java JsoupTester
    
    看看结果。
    
    Relative Link: index.htm
    Absolute Link: https://www.cainiaoya.com/index.htm
    Absolute Link: https://www.cainiaoya.com/index.htm