Jsoup для извлечения данных из HTML-таблицы - PullRequest
0 голосов
/ 08 июля 2011

Я начал использовать 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 (какой селектор использовать?);здесь?

1 Ответ

0 голосов
/ 08 июля 2011

Не вопрос Android, а вопрос выбора CSS. Вы можете прочитать больше об этом на http://www.w3.org/TR/CSS2/selector.html

Выполнять очистку экрана, как это всегда сложно, и не существует «правильного» решения.

Вам нужно будет выполнить несколько шагов выбора.

  1. Селектор типа "body> table> tr". Возьмите первый элемент. Это даст вам начальный элемент TR.
  2. Проверка элемента TR, получение его дочерних элементов и проверка того, что один из них имеет текст «ИМЯ ПРЕДМЕТА».
  3. Тогда остальные элементы TR могут быть обработаны по порядку.
...