分词 否 是 <?xml version="1.0" encoding="UTF-8"?> <pattern> <seed Encode="GBK" id="1" nextTime="2011-05-04 16:255 30:30" frequent="1" siteName=" 北京邮电大学" boardRegx="<a\s+href\s*=\s*"(/board/[^"]*)">(.*?)</a>" passwd="" url=http://bbs.byr.cn/default status="1" /> </pattern> 主题爬虫对BBS 的搜索是一个循环迭代的过程:Crawler 首先从一个“种子集”(如用 260 户查询、种子链接或种子页面,在本系统用XML 文件管理种子文件)出发,将XML 文件 中的不同论坛的配置文件放入种子列表,每次从种子列表中取出一个论坛种子,通过种子中 论坛的入口地址,根据HTTP 协议请求并下载Web 页面;预处理器解析Web 页面,提取链 接文本、结构信息和链接的URLs;然后从种子文件中提取出正则表达式(boardRegx),匹 配下载的Web 文档中符合条件的链接,匹配出的链接即为子版块的入口地址,将匹配出的 265 子版块链接放入到一个待抓取的URL 队列中,开始循环访问待抓取的URL 队列中的链接, 进一步请求并下载各个子板块的Web 文档,对帖子的链接及文本进行相似度分析,为后面 帖子详细信息的提取做准备;当此论坛循环抓取完成,从BBS 入口列表中取出另一个论坛 的入口地址,重复执行上述操作。程序流程图如图7 所示。 270 图7 主题爬虫在BBS 中抓取流程图 3.3 与通用网络爬虫的比较 面向BBS 的主题爬虫主要为网络舆情监控系统的设计作铺垫,本系统的针对性比较强, 开始 从BBS 入口列表获取论坛入口地址 获取网页 从Web 文档中匹配子版块URL 链 接,并将其存入待抓取队列 循环抓取URL队列中的链接 本论坛抓取完成 是 否 抓取正文,存入数据库 帖子是否与主题相关 获取帖子URL 并存入URL 队列 否 是 然而通用网络爬取是面向全网的,对于关心的主题进行搜索,往往得到的数据量比较大,还 275 需要用户进行人为的过滤,比如比较关注一些新闻的信息,就需要用户自己从抓取的网页中 找出相关性比较高的信息。面向BBS 的网络爬虫可以首先根据客户所关心的话题进行站点 种子的配置,如用户关心北京生活,系统就可以配置一些北京地区的地方论坛,这样抓取出 的数据与主题的相关性比较高,再按相关性高低对抓取出的帖子进行排序,所以抓取的帖子 准确性较高。本系统已经实现。与通用网络爬虫对比表,如表2 所示。 280 表2 BBS 中主题爬虫与通用网络爬虫的比较 优点 缺点 通用网络爬虫 网络覆盖性高,响应速度快 准确性低,有大量干扰信息;无法提 供个性化服务 BBS 主题爬虫 准确性高,可针对某一主题或某模块 进行抓取 只使用于BBS,网络覆盖率相对较低 4 结束语 随着BBS 越来越受广大网友喜爱,BBS 的信息量还在不断地增长,设计单独的BBS 网 285 络爬虫及信息提取系统成为必然的发展趋势。本文通过分析主题爬虫的工作原理,设计了面 向BBS 的主题爬虫的应用,其爬虫具有可配置性、可修改性、通用性等特性。但不排除有 些BBS 的格式比较特殊,所以主题爬虫的搜索算法还需继续改进。 [参考文献] (References) 290 [1] 查志华,李伟,搜索引擎的技术现状及发展趋势,兵团教育学院学报,2006(3):28-29 [2] 刘金红,陆余良,主题网络爬虫研究综述[J],计算机应用研究,2007.24(10):26-29 [3] 刘鹏,基于Lucene 的垂直搜索引擎关键技术的研究应用[D],武汉:武汉理工大学,2009 [4] 侯航,基于URL 分析的主题网络机器人研究[D],成都:电子科技大学,2009 [5] 李君梅,基于Web Community 识别的主题爬虫算法研究与设计[D],浙江:浙江大学,2008 295 [6] 邱清盈等,基于正则表达式的专利信息提取方法研究[J],中国机械工程,2007(19) 学术论文网Tag:代写硕士论文 代写MBA论文 代写EMBA论文 代写毕业论文 论文发表 |