htmlparser抽取web网页正文信息

htmlparser抽取web网页正文信息

ID:27717657

大小:286.50 KB

页数:5页

时间:2018-12-05

htmlparser抽取web网页正文信息_第1页
htmlparser抽取web网页正文信息_第2页
htmlparser抽取web网页正文信息_第3页
htmlparser抽取web网页正文信息_第4页
htmlparser抽取web网页正文信息_第5页
资源描述:

《htmlparser抽取web网页正文信息》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、提取网页主题相关内容一般在浏览Web上的网页时会发现两部分内容:一部分是网页的主题信息,另一部分则是与主题内容无关的导航条、广告信息、版权信息等内容,我们称之为“噪音”内容。通过提取主题信息可以减少一半浏览时间,提高用户获取信息的速度,从而增强Web的可用性。那么如何准确、有效的获取Web网页的主题信息呢?下面给出了一种解决方案。一、解析htmlHTMLParser是一个对现有的HTML进行分析的快速实时的解析器,首先从(http://HTMLParser.sourceforge.net/)下载htmlparser1_620050925.zip解压缩得htmlpars

2、er.jar,将htmlparser.jar添加到classpath中,并在程序中引入相应的HTMLParser包。类Parser是HTMLParser的入口,将HTML文本信息传给它,或者直接传递一个URL地址,如:Parserparser=newParser(“http://www.yahoo.com.cn”);初始化一个Parser实例parser后,紧接着就是对所传入的HTML内容进行解析,方法parser.extractAllNodesThatAre(XXXTag.class)将HTML内容中存在的所有的标签XXXTag给解析出来放到一个列表list中去,几

3、乎HTML的标签都有一个对应的类,比如LinkTag、ImageTag、FormTag、TableTag等等,这些标签类都在org.htmlparser.tags包中。根据要处理不同的标签传入不同的类,这种做法可以很方便地处理其他类型的标签。返回的列表中每个元素都是传入类的一个实例,通过这个实例可以访问到当前这个标签的起始位置、结束标签的位置以及包含在标签中的文本信息,同时也可以访问其父标签以及所有的子标签等等,同时可以通过toHtml方法来对标签中包含的HTML信息进行清洗,HTMLParser会自动把一些没有关闭的标签加上,这样所生成的字符串中就包含着完整的格式控

4、制信息,在页面上显示这样的信息也不会破坏版面布局,达到了预期的效果。例如:有如下不规范的html文件(有未关闭标签)通过节点的toHtml()方法补全标签补全了没有关闭的标签本系统采用先读取html文件并将其转换为字符串htmlString:StringhtmlString=readHtmlFile(file);然后将其作为Parser对象的构造参数:Parserparser=Parser.createParser(htmlString,”gb2312”);然后结合过滤器过滤出需要的标签节点。一、过滤器一般主题信息包含在下列标签中:

、、

5、

等。所以如何过滤出这些节点标签呢?htmlparser提供了很好的支持:NodeFilter[]filters=newNodeFilters[3];filters[0]=newNodeClassFilter(TableTag.class);filters[1]=newNodeClassFilter(ParagraphTag.class);filters[2]=newNodeClassFilter(Div.class);NodeFilterfilter=newOrFilter(filters);NodeListlist=parser.extractAl

6、lNodesThatMatch(filter);OrFilter是结合几种过滤条件的‘或’过滤器。通过以上代码就可以过滤得到所有的

节点。例如:下面html文件经过以上过滤器过滤后就只得到所需的节点了Html文件经过滤器过滤经过滤器过滤后得到的结果一、信息抽取、1、

节点的内容相关性判定:我们称包含文本信息的区域为内容块,本系统的核心是内容块的主题相关性判断。本系统所涉及的内容块节点为

。主题相关性判定(当然本系统认为

标签中如果还含其他标签,或者

标签中含有

,

7、ript>或内嵌

标签,则认为主题不相关。)包含两部分:局部相关性判定(由局部相关度表示)和上下文相关性判定。局部相关度(LocalRel)由内容块节点中的非链接中文字符总数和链接总数决定,其计算公式为:LocalRel=wordsNum/linkNum当LocalRel大于等于L(其中L是局部相关度的阀值),称该块局部相关(如果linkNum为0且wordsNum大于14,认为局部相关)。上下文相关性即判定该内容块节点的前驱兄弟和后继兄弟的主题相关性。前驱兄弟和后继兄弟必须是包含有中文内容的结点。主题内容块的判定算法如图:words_min是规

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。