繁体   English   中英

Jsoup 从 html 表中提取数据

[英]Jsoup to extract data from html table

我今天已经开始使用 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 (使用什么选择器?); 这里?

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

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

您将需要执行多个 select 步骤。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM