lucene.net 中htmlparser 的使用

    技术2022-05-11  159

    在lucene.net代码包里有个。lucene.net-1.9.RC1-000-26May05.src/Lucene.Net-1.9.rc1/Demo/DemoLib此包是用来解析html文档,获取html文章中的title meta等。如果使用改api DemoLib.ll此api 有2个名字空间namespace Lucene.Net.Demonamespace Lucene.Net.Demo.Html我们要使用到该名字下 class HTMLParser比如我们要解析c:/test.htm 我们可以用如下的方法,protected  void htmlpser(object sender, System.EventArgs e)  {   // 在此处放置用户代码以初始化页面   System.IO.FileInfo myfileinfo=new System.IO.FileInfo(@"c:/test.htm");   HTMLParser htmlp=new HTMLParser(myfileinfo);   string outstr;   outstr=htmlp.GetTitle()+"<br>";   outstr=outstr+htmlp.GetSummary()+"<br>";   Label1.Text=outstr;  }

    原包只支持本地路径下的文件,不支持url返回的html

    下面我们具体做下如何获取一个url返回的htmlHTMLParser()其中可支持public HTMLParser(System.IO.FileInfo file) : public HTMLParser(System.IO.Stream) : 我们可以把url返回的html封装到stream中 请看下面提供的方法。protected  void htmlpser(object sender, System.EventArgs e)  {   // 在此处放置用户代码以初始化页面   string PageUrl =purl.Text;   WebRequest  request = WebRequest.Create(PageUrl);   WebResponse response = request.GetResponse();   Stream resStream = response.GetResponseStream();   StreamReader sr = new StreamReader(resStream, System.Text.Encoding.Default);   //System.IO.FileInfo myfileinfo=new System.IO.FileInfo(@"c:/test.htm");   HTMLParser htmlp=new HTMLParser(sr);   string outstr;   outstr=htmlp.GetTitle()+"<br>";   outstr=outstr+htmlp.GetSummary()+"<br>";   Label1.Text=outstr;   //Response.Write(htmlp.GetMetaTags().Count);  }


    最新回复(0)