基于 JAVA 技术的网页内容智能抓取
架构
完全基于 java 的技术
核心技术
XML 解析, HTML 解析,开源组件应用。应用的开源组件包括:
DOM4J :解析 XML 文件
jericho-html-2.5 :解析 HTML 文件
commons-httpclient :读取 WEB 页面内容工具
其他必须的辅助引用包括:
commons-codec
commons-logging
jaxen
基本业务流程描述
通过 XML 文件定义抓取目标
通过 DOM4J 开源组件读取 XML 配置文件
根据配置文件执行抓取任务
对抓取到的内容根据定义进行解析与处理
目前缺陷功能描述
抓取内容如果有分页,则无法获取下一分页
目标页面可能包含有想抓取的信息,但没有抓取的配置选项。如百度贴吧
目标页面链接定义不够灵活,对于百度贴吧的链接参数以 50 增加的只能手动定义
没有多线程支持
日志输出比较混乱
错误处理比较简单, 不能对失败的任务自动重新执行, 很多地方缺乏错误判断, 如
空数组
程序架构不够清晰,代码略显凌乱