首页 HTMLParser抽取Web网页正文信息

HTMLParser抽取Web网页正文信息

举报
开通vip

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

HTMLParser抽取Web网页正文信息
提取网页主 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 相关 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 一般在浏览Web上的网页时会发现两部分内容:一部分是网页的主题信息,另一部分则是与主题内容无关的导航条、广告信息、版权信息等内容,我们称之为“噪音”内容。通过提取主题信息可以减少一半浏览时间,提高用户获取信息的速度,从而增强Web的可用性。那么如何准确、有效的获取Web网页的主题信息呢?下面给出了一种解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。 1、 解析html HTMLParser是一个对现有的HTML进行分析的快速实时的解析器,首先从( http://HTMLParser.sourceforge.net/)下载htmlparser1_620050925. zip解压缩得htmlparser.jar,将htmlparser.jar添加到classpath中,并在程序中引入相应的HTMLParser包。类Parser是HTMLParser的入口,将HTML文本信息传给它,或者直接传递一个URL地址,如:Parser parser = new Parser(“http://www.yahoo.com.cn”);初始化一个Parser实例parser后,紧接着就是对所传入的HTML内容进行解析,方法parser.extractAllNodesThatAre (XXXTag.class)将HTML内容中存在的所有的标签XXXTag给解析出来放到一个列表list中去,几乎HTML的标签都有一个对应的类,比如LinkTag、ImageTag、FormTag、TableTag等等,这些标签类都在org.htmlparser.tags包中。根据要处理不同的标签传入不同的类,这种做法可以很方便地处理其他类型的标签。返回的列表中每个元素都是传入类的一个实例,通过这个实例可以访问到当前这个标签的起始位置、结束标签的位置以及包含在标签中的文本信息,同时也可以访问其父标签以及所有的子标签等等,同时可以通过toHtml方法来对标签中包含的HTML信息进行清洗,HTMLParser会自动把一些没有关闭的标签加上,这样所生成的字符串中就包含着完整的 格式 pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载 控制信息,在页面上显示这样的信息也不会破坏版面布局,达到了预期的效果。 例如:有如下不 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 的html文件(有未关闭标签) 本系统采用先读取html文件并将其转换为字符串htmlString: String htmlString = readHtmlFile(file); 然后将其作为Parser对象的构造参数: Parser parser = Parser.createParser(htmlString,”gb2312”); 然后结合过滤器过滤出需要的标签节点。 2、 过滤器 一般主题信息包含在下列标签中:、、

等。所以如何过滤出这些节点标签呢?htmlparser提供了很好的支持: NodeFilter[] filters = new NodeFilters[3]; filters[0] = new NodeClassFilter(TableTag.class); filters[1] = new NodeClassFilter(ParagraphTag.class); filters[2] = new NodeClassFilter(Div.class); NodeFilter filter = new OrFilter(filters); NodeList list = parser.extractAllNodesThatMatch(filter); OrFilter是结合几种过滤条件的‘或’过滤器。通过以上代码就可以过滤得到所有的、

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

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

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

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

标签中含有

,