Html 如何使用Jsoup从表中获取行

Html 如何使用Jsoup从表中获取行,html,jsoup,Html,Jsoup,我有一个没有任何类或id的表(页面上有更多表),其结构如下: <table cellpadding="2" cellspacing="2" width="100%"> ... <tr> <td class="cell_c">...</td> <td class="cell_c">...</td> <td class="cell_c">...

我有一个没有任何类或id的表(页面上有更多表),其结构如下:

<table cellpadding="2" cellspacing="2" width="100%">
...  
     <tr>
          <td class="cell_c">...</td>
          <td class="cell_c">...</td>
          <td class="cell_c">...</td>
          <td class="cell">SOME_ID</td>
          <td class="cell_c">...</td>
     </tr>
...
</table>

但是如果大部分工作是由regexp完成的,为什么我需要Jsoup呢?要下载HTML?

如果您有一个始终相同的通用HTML结构,并且您想要一个没有唯一ID或标识符属性可供使用的特定元素,那么您可以使用Jsoup中的css选择器语法来指定您要查找的元素在DOM树中的位置

考虑以下HTML源代码:

<html>
 <head></head>
 <body>
  <table cellpadding="2" cellspacing="2" width="100%"> 
   <tbody>
    <tr> 
     <td class="cell">I don't want this one...</td> 
     <td class="cell">Neither do I want this one...</td> 
     <td class="cell">Still not the right one..</td> 
     <td class="cell">BINGO!</td> 
     <td class="cell">Nothing further...</td> 
    </tr> ... 
   </tbody>
  </table>
 </body>
</html>
将输出

Did I find it? BINGO!

一些好的读物

您尝试了什么吗?我只能选择all,然后在循环中检查它们是否包含一些\u ID。但问题是页面有多个具有不同结构的表。您可以使用xpath吗?但是看看这个:内容HTML是静态的吗,意思总是相同的结构?@Daniel B,是的,它总是相同的页面。
Element e = doc.select("td:eq(3)").first();
System.out.println("Did I find it? " + e.text());
Did I find it? BINGO!