用htmlparser 解析本地html文件

初识htmlparser是为了获取网络数据,但是如果html文件已经被下载到本地,那么如何解析呢?
解析本地和解析网络上即时获取的html道理是一样的,可是具体怎么做,搜遍了网络也没找到什么线索。偶尔遇到几个提到的帖子,要么说的驴唇不对马嘴,要么简要带过。对于我这个初学者来说,这层窗户纸始终无法捅破。
为了让更多的初学朋友迅速解决这个问题,我把自己经验写下来。希望对你们有帮助。
解析网络数据的JAVA语句如下:
  String url = http://www.xxx.com;
  Parser p = new Parser(url);
  //...
如果换成本地文件,就麻烦一些,不过道理是一样的。据我的理解,以上new Parser的过程中,第一个要做的工作就是,获取url网页中的字符流,这些字符流中,既是(或者包含了)对应HTML网页的源文件中的内容。但是此时此刻,这个工作是“隐式地”完成的。
如果要解析本地的html,就需要把上述过程低第一个要做的工作“显式地”做出来。我们在解析本地html之前,要显式地获取本地文件中的字符流,然后再创建parser。代码如下:
   String path ="d://fileFolder//wantParser.html";// file path you want to parser
   StringBuffer abstr = new StringBuffer();
   BufferedReader reader= new BufferedReader(new FileReader(new File(path)));
   String temp="";
   while((temp=reader.readLine())!=null){
    abstr.append(temp);
    abstr.append("\r\n");
   }
   String result =abstr.toString(); // here you get all the string within your file.
   Parser p = Parser.createParser(result, "GB2312");// creat a parser ,which you want to parse. 


接下来的工作,就和网络解析html的代码一样了。
参考文献:

黄颖,黄治平;《HtmlParser提取网页信息的设计与实现》,江西理工大学学报,28卷,6期

转载自:

【1】用htmlparser 解析本地html文件

http://blog.sina.com.cn/s/blog_53f7a75b01011zxd.html

【2】使用HtmlParser解析HTML

http://www.cnblogs.com/doll-net/archive/2007/06/29/800396.html

【3】HTMLParser使用详解

http://wenku.baidu.com/view/8576448f6529647d27285286.html

你可能感兴趣的:(html,工作,网络,String,url,Path)