Jsoup获取url所有链接

简介: Jsoup获取url所有链接

效果

直接上代码

package wang.test;
 
 
  import org.jsoup.Jsoup;
  import org.jsoup.helper.Validate;
  import org.jsoup.nodes.Document;
  import org.jsoup.nodes.Element;
  import org.jsoup.select.Elements;
 
  import java.io.IOException;
 
  /**
   * Example program to list links from a URL.
   */
  public class App2 {
      /**
       * @param args
       * @throws IOException
       */
      public static void main(String[] args) throws IOException {
          //Validate.isTrue(args.length == 1, "usage: supply url to fetch");
          //String url = args[0];
          String url ="http://politics.people.com.cn/n1/2018/1106/c1001-30383657.html";
          print("Fetching %s...", url);
 
          Document doc = Jsoup.connect(url).get();
          Elements links = doc.select("a[href]");
          Elements media = doc.select("[src]");
          Elements imports = doc.select("link[href]");
 
          print("\nMedia: (%d)", media.size());
          for (Element src : media) {
              if (src.tagName().equals("img"))
                  print(" * %s: <%s> %sx%s (%s)",
                          src.tagName(), src.attr("abs:src"), src.attr("width"), src.attr("height"),
                          trim(src.attr("alt"), 20));
              else
                  print(" * %s: <%s>", src.tagName(), src.attr("abs:src"));
          }
 
          print("\nImports: (%d)", imports.size());
          for (Element link : imports) {
              print(" * %s <%s> (%s)", link.tagName(),link.attr("abs:href"), link.attr("rel"));
          }
 
          print("\nLinks: (%d)", links.size());
          for (Element link : links) {
              print(" * a: <%s>  (%s)", link.attr("abs:href"), trim(link.text(), 35));
          }
      }
 
      private static void print(String msg, Object... args) {
          System.out.println(String.format(msg, args));
      }
 
      private static String trim(String s, int width) {
          if (s.length() > width)
              return s.substring(0, width-1) + ".";
          else
              return s;
      }
  }
 
目录
相关文章
|
9月前
|
编解码
解决Hexo博客导航栏链接URL乱码问题
今年的计划之一是搭建一个博客,开始写博客。于是在网上找了一些博客程序发现用Hexo在gitHub上搭建自己的个人博客是比较简单而且易于维护的做法。 在网上找了一些教程后开始搭建,用自己比较中意的hexo-theme-next模板,发现搭建成功后导航栏链接不对,出现了URL乱码的问题。在网上搜索了一把发现有些网友也碰到了类似的问题不过都还没有解决。
108 0
|
10月前
|
JavaScript 前端开发
JS 下载 URL 链接文件(点击按钮、点击a标签、支持代理与非代理下载)
JS 下载 URL 链接文件(点击按钮、点击a标签、支持代理与非代理下载)
261 0
|
21天前
|
Windows
iis配置http重定向302转发get请求并去掉最后的斜杠/ iis重定向 iis去除url最后的斜杠 iis重定向链接斜杠(已解决)
iis配置http重定向302转发get请求并去掉最后的斜杠/ iis重定向 iis去除url最后的斜杠 iis重定向链接斜杠(已解决)
15 0
删除url指定链接上的参数
删除url指定链接上的参数
url链接后面加随机数-随机时间
url链接后面加随机数-随机时间
|
9月前
|
存储 JavaScript
vue本地存储、获取自定义data-id、获取链接url参数、页面跳转返回、修改页面title
vue本地存储、获取自定义data-id、获取链接url参数、页面跳转返回、修改页面title
|
10月前
|
Web App开发
谷歌直链下载云盘数据集,使用谷歌云盘生成直接下载的url,示例: NeRFStudio-nerfacto默认训练数据集poster下载,nerfstudio 数据集下载链接
谷歌直链下载云盘数据集,使用谷歌云盘生成直接下载的url,示例: NeRFStudio-nerfacto默认训练数据集poster下载,nerfstudio 数据集下载链接
497 0
谷歌直链下载云盘数据集,使用谷歌云盘生成直接下载的url,示例: NeRFStudio-nerfacto默认训练数据集poster下载,nerfstudio 数据集下载链接
|
10月前
|
移动开发 JavaScript
js对H5链接url进行解密实现过程(vue)
js对H5链接url进行解密实现过程(vue)
141 0
|
数据库 Python
Python实战:通过内置函数urljoin优雅的实现url链接的拼接
Python实战:通过内置函数urljoin优雅的实现url链接的拼接
203 0
|
Java
Java判断url(链接)是否有效
Java判断url(链接)是否有效
620 0
Java判断url(链接)是否有效