Получить данные HTML-таблицы с веб-сайта в Android с помощью библиотеки Jsoup, - PullRequest
1 голос
/ 07 мая 2019

Я работаю над приложением, в котором я анализирую некоторые данные с одного или двух веб-сайтов.К счастью, я сделал это для некоторых моих целевых данных, но нет.Теперь, когда я использую Jsoup для анализа данных с веб-сайта, я использовал тот же формат jsoup, чтобы получить данные фазы 2, как я делал для фазы 1 моего приложения, но на этот раз ничего не происходит, когда массив данных отображается пустым.Я проверил оба кода HTML, и в обоих есть небольшая разница.

В моей фазе 1 я проанализировал таблицу, используя ее класс, а затем я получил соответствующую таблицу.На втором этапе формат таблицы и ее значения отличаются, поэтому я изо всех сил пытаюсь это выяснить.Я публикую HTML-код, из которого я хочу получить данные.

<div class="view-content">
  <table class="views-table cols-3">
    <thead>
    </thead>
    <tbody>
      <tr class="odd views-row-first views-row-last">
        <td class="views-field views-field-counter">
          1 </td>
        <td class="views-field views-field-body">
          <p>some text here</p>
        </td>
        <td class="views-field views-field-field-notif-pdf">
          <a href="https://someurl.pdf" target="_blank"></a> Size :- 1.85 MB, Language:- English</td>
      </tr>
    </tbody>
  </table>
</div>

Я хочу получить данные внутри табличного тега, и у меня возникли проблемы, чтобы понять, как это будет сделано со всеми классами в tr и td.Любая помощь или предложение будут высоко оценены ..

СПАСИБО!

1 Ответ

0 голосов
/ 07 мая 2019

Вы можете использовать селекторы в Jsoup:

 File input = new File("path_to_html/test.html");
        Document doc = Jsoup.parse(input, StandardCharsets.UTF_8.name());
///select table body
        Element tbody = doc.select("tbody").first();

другие примеры по адресу:

https://jsoup.org/cookbook/extracting-data/selector-syntax

...