我有一个公司内容的网站,我现在是要在这个网页根据表头,设计数据量,然后把抓取所以的数据来存在数据库,做一些事情。请问怎么实现抓取?抓取网页大致布局是:
<form><table>   <table>
   <thead>
  表头如下:
<th class="sortable">
<a href="/ReviewToolWS//center.jsp?d-7272271-s=13&amp;projectId=A5B9E0D0-3686-411B-B472-61EDEC8A41E9&amp;d-7272271-o=2">Defect Qualifier<br/>缺陷界定</a></th></tr></thead>
   </thead>
<tbody>
内容如下
<tr class="odd">
<td style="width:20">4</td>
<td style="width:50">l54899</td>
<td style="width:400">宏定义不对</td>
<td style="width:60"></td>
<td style="width:50"></td>
<td style="width:300"></td>
<td style="width:70"></td>
<td style="width:80">\code\pureRAN2\branches\eRAN3.0_Dev\LTE_V100R001\mpt\app\src\om\Cbbum\CBBUM_Cfg.c</td>
<td style="width:70">Defect缺陷</td>
<td style="width:70">Minor一般</td>
<td style="width:100"></td>
<td style="width:80"></td>
<td style="width:80"></td>
<td style="width:55"></td></tr></tbody>
</table></table>
</form>

解决方案 »

  1.   

    解析啊。比如<tr class="odd"> 可以找class为odd的tr。  可以使用JSoup操作。 一个Java对HTML操作的框架。 基于选择器的。 跟JQuery差不多。
      

  2.   

    看起来比较简单,不需要关注登录、Cookie啥的,可以考虑直接用:
    URLConnection cn = new URL("http://www.baidu.com").openConnection();cn.getInputStream() 就可以得到完整内容了。接下来可以考虑用HTMLParser或者直接正则来解析你要的数据。
      

  3.   

    这里有个很简单的 HTMLParser 的使用样例,楼主你看看吧:
      http://wangxing0311.iteye.com/blog/898745