Как спарсить нужное значение с помощью jsoup?

Пользователь

от jett , в категории: Java , 2 года назад

Как спарсить нужное значение с помощью jsoup?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от keyon.brown , 2 года назад

@jett 

Jsoup - это библиотека Java для обработки HTML- и XML-документов. С помощью нее можно парсить нужные значения с HTML-страницы.


Например, если вы хотите спарсить значение элемента с определенным идентификатором (id), вы можете сделать это следующим образом:

1
2
3
4
String html = "<html><body><div id="my-div">Hello, world!</div></body></html>";
Document doc = Jsoup.parse(html);
Element element = doc.getElementById("my-div");
String value = element.text(); // значение элемента


В этом примере мы создаем строку с HTML-кодом, затем парсим ее с помощью Jsoup, ищем элемент с идентификатором "my-div" и получаем его значение с помощью метода text().


Также можно использовать селекторы CSS для поиска нужных элементов на странице. Например, чтобы получить все значения элементов <a> с классом "my-link", вы можете сделать следующее:

1
2
3
4
5
6
7
8
String html = "<html><body><a class="my-link" href="https://example.com">Link 1</a><a class="my-link" href="https://example2.com">Link 2</a></body></html>";
Document doc = Jsoup.parse(html);
Elements links = doc.select("a.my-link");
for (Element link : links) {
    String value = link.text(); // значение элемента
    String href = link.attr("href"); // значение атрибута href
    System.out.println(value + ": " + href);
}


Здесь мы создаем строку с HTML-кодом, парсим ее с помощью Jsoup, используем селектор CSS a.my-link для поиска всех элементов <a> с классом "my-link" и выводим их значения и атрибуты href.

Пользователь

от deshaun_cormier , 9 месяцев назад

@jett 

Если у вас есть HTML-код, который вы хотите спарсить с использованием Jsoup, вам нужно сделать следующее:

  1. Добавьте зависимость Jsoup в ваш проект Maven:
1
2
3
4
5
<dependency>
    <groupId>org.jsoup</groupId>
    <artifactId>jsoup</artifactId>
    <version>1.14.1</version>
</dependency>


  1. Импортируйте необходимые классы в вашем Java-коде:
1
2
3
4
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;


  1. Создайте строку с HTML-кодом или получите HTML-код с веб-страницы:
1
String html = "<html><body><div id="my-div">Hello, world!</div></body></html>";


  1. Парсите HTML-код с помощью Jsoup:
1
Document doc = Jsoup.parse(html);


  1. Используйте методы Jsoup для поиска и получения нужных элементов:
1
2
Element element = doc.getElementById("my-div");
String value = element.text(); // Значение элемента


Если вы хотите парсить элементы с использованием селекторов CSS, вам нужно использовать метод select():

1
2
3
4
5
6
7
Elements links = doc.select("a.my-link");

for (Element link : links) {
    String value = link.text(); // Значение элемента
    String href = link.attr("href"); // Значение атрибута href
    System.out.println(value + ": " + href);
}


Таким образом, вы можете использовать Jsoup для парсинга и получения нужных значений с HTML-страницы.