从 java 中的 xml link 中提取 URL 位置

extract URL location from an xml link in java

我是 java 的新人,我有一个 link “https://moz.com/blog-sitemap.xml” 有 URL,我想获取它们并将它们保存在一个字符串中 vector/array.

我首先尝试了这个,看看我将如何获得 links

URL robotFile = new URL("https://moz.com/blog-sitemap.xml");

    //read robot.txt line by line
    Scanner robotScanner = new Scanner(robotFile.openStream());
    while (robotScanner.hasNextLine()) {
        System.out.println(robotScanner.nextLine());
    }

这是示例输出

我的回答是,有没有一种更简单的方法来获取这些 link,而不是在每一行上循环检查它是否包含 "https",这样我就可以从中提取 link它 ?

您可以使用 Jsoup 更轻松地完成此操作:

    List<String> urlList = new ArrayList<>();
    Document doc = Jsoup.connect("https://moz.com/blog-sitemap.xml").get();
    Elements urls = doc.getElementsByTag("loc");

    for (Element url : urls) {
        urlList.add(url.text());
    }