日期:2014-05-20  浏览次数:20770 次

有人会html parser吗?照着例子敲的,但是好像解析不出来
最近开始学解析html,一直没有找到好的方法,听说html parser可以解析,,但是网上搜了很多也没用看到比较详细的说明文档,,,有木有大神有好的资料可以分享一下,,感激不尽T^T

下面是我照着例子敲的一个小demo,但是好像解析不出来,,求大神帮忙看一下,多谢

public class ParseTest {

public static void main(String[] args) {

String localFile = "C:\\Documents and Settings\\Administrator\\桌面\\mzw.htm";

// 将本地html文件存入String对象
String html = HtmlToStr(localFile);

//这里可以将html文件中的内容打印到控制台,说明还是成功读取到了的
// System.out.println(html);

Parser parser = new Parser();
try {
parser.setInputHTML(html);

NodeList nodes = parser.parse(new NodeClassFilter(ImageTag.class));
for (int i = 0; i < nodes.size(); i++) {
ImageTag it = (ImageTag) nodes.elementAt(i);
String imageURL = it.getImageURL();
System.out.println(imageURL);
}

} catch (ParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

public static String HtmlToStr(String filePath) {
StringBuilder html = new StringBuilder();

try {
BufferedReader br = new BufferedReader(new FileReader(filePath));
String line = null;
while ((line = br.readLine()) != null) {
html.append(line + "\n");
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}

return html.toString();
}
}

------解决方案--------------------
api 有异常不/
------解决方案--------------------
选择一个网络上的网站,不要选择自己的文件试试
------解决方案--------------------
那你html 贴出来吧。。
------解决方案--------------------
引用:
Quote: 引用:

选择一个网络上的网站,不要选择自己的文件试试

我是在将网上的一个网页保存到本地,然后来解析的。。
你确定 parse不但可以解析http的协议同时还可以解析file文件协议?不要乱用哦