java获取html内的内容

来源:百度知道 编辑:UC知道 时间:2024/05/18 14:21:37
哪位高手帮我实现一下,谢谢!:
一个html,里面至少有一个table(且只有一个table),假设是tb1,现在我想把tb1的最后一个<tr>内的<td>里的内容读取来,放到一个字符串数组中.
示例:
对于以下的<tr>
<tr>
<TD bgColor=#3c57c4><b>帐务时间</b></TD>
<TD bgColor=#3c57c4 align=center><i><font size=+2 color=blue>用户标识</font></i></TD>
<TD bgColor=#3c57c4>客户标识 </TD>
<TD bgColor=#3c57c4>用户帐号 </TD>
</tr>
取出结果:
content[0]="帐务时间"
content[1]="用户标识"
content[2]="客户标识"
content[2]="用户帐号"

从html页上获得tb1中获得最后一个<tr>没有问题,现在问题是解析上面贴出的<tr>里面的部分.
注意:1.以上的<html>要当作一个java字符串处理(这里特别说明,html页面不是可以浏览的html页面,是保存在数据库里的一个字符串,所以请您不要说用javascript来获取值).
2.td可能有很多的属性,td里面的内容可能有很多其它标签的修饰,这些是不确定的
谢谢大家,特别谢谢小桥流水人家,因为只有你写了一个完整的程序,但是事实上我采用了ubibin 的建议,因为这个作为一个拿去应用的东西,容错性高点次行.smluyi显然是题目都没有看完就随便给我回答.我在提问中已经特别强调,不能用javascript

简单实现:
HtmlRequest类的内容:
[java] view plaincopy
package com.capinfotech.net;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class HtmlRequest {

public static void main(String[] args) throws IOException {
URL url = new URL("http://www.163.com/");
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
InputStream inputStream = conn.getInputStream(); //通过输入流获得网站数据
byte[] getData = readInputStream(inputStream); //获得网站的二进制数据
String data = new String(getData, "gb2312");
System.out.println(data);

}

public static