【问题标题】:Jsoup to extract data from html tableJsoup从html表中提取数据
【发布时间】:2011-07-08 05:23:05
【问题描述】:

我今天已经开始使用 JSoup 来用于一个 android 应用程序,所以我有这张表,我需要从中提取数据,但从它看来,这将是艰难的。需要一些帮助;表格的html如下:

<TR BGCOLOR='#999999'>
      <TD ALIGN='left'><span class='S09W80'><font color=#DDDDDD>CODE</span></TD>
      <TD ALIGN='left'><span class='S09W80'><font color=#DDDDDD>SUBJECT NAME</span></TD>
      <TD ALIGN='right'><span class='S09W80'><font color=#DDDDDD>PERIOD FROM</span></TD>
      <TD ALIGN='right'><span class='S09W80'><font color=#DDDDDD>PERIOD TO</span></TD>
      <TD ALIGN='right'><span class='S09W80'><font color=#DDDDDD>ENROL DATE</span></TD>
      <TD ALIGN='right'><span class='S09W80'><font color=#DDDDDD>GRADE</span></TD>                
</TR>

接着重复

<TR BGCOLOR='#FFFFFF'>
  <TD ALIGN='left'><span class='S09W50'>IT142</span></TD>
  <TD ALIGN='left'><span class='S09W50'>INTRODUCTION TO GRAPHICS DEVELOPMENT</span></TD>
  <TD ALIGN='right'><span class='S09W50'>21-FEB-11</span></TD>
  <TD ALIGN='right'><span class='S09W50'>17-JUN-11</span></TD>
  <TD ALIGN='right'><span class='S09W50'>22-FEB-11</span></TD>
  <TD ALIGN='center'><span class='S09W80'>B-</span></TD>
</TR>

但是我该如何使用 doc.select(使用什么选择器?);在这里?

【问题讨论】:

标签: java php android html-table jsoup


【解决方案1】:

不是真正的 Android 问题,而是 CSS 选择器问题。你可以在http://www.w3.org/TR/CSS2/selector.html了解更多信息

像这样进行屏幕抓取总是很棘手,并且没有“正确”的解决方案。

您需要执行多个选择步骤。

  1. 类似“body > table > tr”的选择器。取第一个元素。这将为您提供初始 TR 元素。
  2. 验证 TR 元素,获取其子元素并验证其中一个具有文本“SUBJECT NAME”。
  3. 然后可以依次处理其他TR元素。

【讨论】:

    猜你喜欢
    • 2020-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 2011-07-14
    • 2019-09-16
    相关资源
    最近更新 更多