使用Jsoup库从android网站上获取html表数据,

时间:2019-05-07 07:42:59

标签: java android html jsoup html-parsing

我正在开发一个应用程序,该应用程序在解析一个或两个网站上的某些数据。幸运的是,我为某些目标数据执行了此操作,但没有。现在,我正在使用Jsoup来解析来自网站的数据,我使用与应用程序第1阶段相同的jsoup格式来获取第2阶段的数据,但是这次没有任何操作可获取显示空白的arraylist。我检查了两个HTML代码,两者都有一些区别。

在我的phase1中,我使用表的类来解析表,然后获取该表的相应内容。在第二阶段中,表格的格式及其tr&tds是不同的,因此我正在努力解决。我正在发布要从中获取数据的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 :(得分:0)

您可以在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