Рубрики
Без рубрики

Ява – Как получить все ссылки с веб-страницы?

– Java – Как получить все ссылки с веб-страницы?

Синтаксический анализатор HTML jsoup пример, показывающий, как анализировать и получать все HTML-гиперссылки с веб-страницы:

  
      org.jsoup
      jsoup
      1.12.1
  
package com.mkyong;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import java.io.IOException;
import java.util.HashSet;
import java.util.Set;

public class JsoupFindLinkSample {

    public static void main(String[] args) throws IOException {

        for (String link : findLinks("https://google.com")) {
            System.out.println(link);
        }

    }

    private static Set findLinks(String url) throws IOException {

        Set links = new HashSet<>();

        Document doc = Jsoup.connect(url)
                .data("query", "Java")
                .userAgent("Mozilla")
                .cookie("auth", "token")
                .timeout(3000)
                .get();

        Elements elements = doc.select("a[href]");
        for (Element element : elements) {
            links.add(element.attr("href"));
        }

        return links;

    }

}

Выход

https://play.google.com/?hl=en&tab=w8
https://www.google.com/calendar?tab=wc
/intl/en/about.html
https://photos.google.com/?tab=wq&pageId=none
https://drive.google.com/?tab=wo

//...

Рекомендации

Оригинал: “https://mkyong.com/java/java-how-to-get-all-links-from-a-web-page/”