对本系统后续工作者的一点建议

2024-04-19 08:18

本文主要是介绍对本系统后续工作者的一点建议,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

对后续工作者的一点建议 build 091011

1. 熟悉HtmlParser

 Java用于解析网页的开源库主要有HtmlParser和NekoHtml,模拟浏览器自动测试的有HtmlUnit,真正解析js或提取dom节点的视觉信息还是靠Mozilla的浏览器。
 
 NekoHtml的效率和发展状况更好,但是实践表明HtmlParser是可以满足信息抽取任务的。HtmlParser结构比较好,便于上手或进一步修改。

 务必熟悉HtmlParser的大部分API,及其所有内部数据结构,这是下一步工作的基础。

2. 阅读论文

 可以以几篇中文论文(综述,或相关硕博士论文)入门,之后阅读WWW 会议或IEEE,ACM相关会议的论文。

 下面是我看过的论文中关于HTML结构这方面比较经典的

 0.A Brief Survey of Web Data Extraction Tools
 02年的综述,值得一看。鄙人已译,译文在网上很容易搜到。如果比较懒,直接看下一篇也可以。

 1.A Survey of Web Information Extraction Systems.
 06年IE领域权威综述,必读

 2.RoadRunner Towards Automatic Data Extraction from Large Web Sites
 基于html的包装器全自动抽取技术的鼻祖

 3.Automatic Web news extraction using tree edit distance
 WWW论文,提供了针对相似页面生成模板的全自动信息抽取的一揽子解决方案

 4.Mining Data Records in Web Pages
 SIGKDD论文,无模板方法自动提取数据记录的代表作。鄙人已译。

 5.Web data extraction based on partial tree alignment
 WWW论文,上面这篇论文的改进版,引入了本系统的基础算法:STM算法

 6.Joint Optimization of Wrapper Generation and Template Detection
 KDD论文,这篇论文综合前面几篇的观点,提出了一种模式树。但作者没有说明其动态规划是如何实现的,鄙人一开始是想实现这个算法,但没成功。如果能在本科毕设实现这项工作,我认为是可圈可点的。

 7.VIPS: a Vision-based Page Segmentation Algorithm
 微软亚洲研究院的论文,基于视觉信息分块,前两年火的一塌糊涂,微软的搜索引擎也使用了这项技术,但注意它是无模板的。

 此外,应该了解一下树编辑距离及其衍生问题,最大公共子树问题,后缀树等算法的思想。

 下面是中科院计算所信息抽取小组的blog,其中推荐了很多该领域的论文。
 http://blog.csdn.net/ictextr9

3.下一步的展望

 (0)完善本系统

 WIE系统暂时还只能处理gb2312编码,需要针对自动判断编码进行改进,网上有针对HtmlParser的解决方案。

 本系统的噪音祛除算法还比较简单,如何准确的对网页分块还是一项比较困难的课题,目前效果最好的是基于视觉信息的方法。

 (1)挖掘嵌套数据结构:
 
 本系统对于所有内容节点是一视同仁的,没有考虑表格,列表等数据结构。
 
 以本系统建立的模板为基础,根据上面提到的论文4,5中的方法,实现基于模板技术的列表页面的自动挖掘是完全可行的。实现这项工作也是个不错的本科毕设题目。

 至于文献6的方法,可以量力而行。

 (2)向量空间模型

 这方面比较成熟,但是与本系统相结合是否合适,还有待于考虑。

 (3)视觉信息

 即论文7。这个内容也被广泛应用到普通高等院校的研究生毕设项目中。但是需要使用浏览器解析网页,抛开本系统,从底层重新做,工作量较大。

 本质上说,这是一种无模板方法,但是可以利用该算法来处理我们抽取的模板。

 值得注意的是,无模板抽取网页信息的方法,在这两年发展迅速。


 (4)自然语言处理&机器学习&隐马尔可夫模型

 这些都有现成的毕设论文可供参考。没做过相关研究,不做评论。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/scottxp/archive/2009/10/11/4654562.aspx

这篇关于对本系统后续工作者的一点建议的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/917019

相关文章

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

MySQL中读写分离方案对比分析与选型建议

《MySQL中读写分离方案对比分析与选型建议》MySQL读写分离是提升数据库可用性和性能的常见手段,本文将围绕现实生产环境中常见的几种读写分离模式进行系统对比,希望对大家有所帮助... 目录一、问题背景介绍二、多种解决方案对比2.1 原生mysql主从复制2.2 Proxy层中间件:ProxySQL2.3

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon