近年来,材料领域对于石墨烯的探索越来越深入,与此同时,大量的专业文献被发表在各类期刊、会议中。在大量文献中查找所需要的文献也变得越来越困难。传统数据库搜索效率低下且搜索结果并不尽如人意。因此,本文设计了一种基于Lucene工具包,Python爬虫技术等开发的一套本地全文检索系统。首先利用爬虫技术获取互联网上相关文献资料,接着保存到MySQL数据库中,通过自定义开发Lucene创建索引和搜索服务,从而完成一整套搜索引擎系统服务。经大量测试表明,该系统搜索结果准确率接近数据库搜索,搜索速度也远快于传统的数据库查询。因此,该系统可以用于进行石墨烯中文文献的搜索查询,从而提高科研人员查阅文献的效率。
石墨烯是进入二十一世纪以来材料领域研究的热点,被称为“黑金”,因为它出色的光学、电学、力学等特性,使得石墨烯在各个领域都发挥了巨大的作用。与此同时,大量的石墨烯制备方法和相关改进的论文被发表,却没有相应的数据检索系统管理,以致每次搜索相关文献时需要花费大量的精力。现有的百度学术、谷歌学术等搜索引擎提供的搜索结果并没有分类、相关度等功能;万方、知网等知识库提供的搜索结果又不太准确。
中文文献一方面发布在对应出版社的官方网站上, 另一方面主要是被知网、万方、维普等网站收录并发布。因此,为了提高石墨烯领域科研人员查找文献的效率,让其更专注于实验, 在此提出一种利用Python 爬虫 + 基于Lucene 的搜索引擎设计方案[1], 利用爬虫不断从互联网爬取数据保证文献的时效性,利用搜索引擎搜索文献保证文献的准确性,解决现有的搜索结果不准确、没有相关度分析等问题。
2. 技术选型 2.1. Lucene 工具包 Lucene 是Apache 软件基金会的一个子项目,是一个开放源码的全文检索引擎工具包,并不是个完整的全文搜索引擎。因此我们可以利用Lucene 源代码的基础上加入自己的算法。目前比较流行的ElasticSearch 和Solr 都是基于Lucene 二次开发的搜索引擎框架。本文采用最新的lucene-7.5.0 工具包。
本文中,主要使用analysis 分词包、index 索引包、document 索引存储包、search 检索包、store 存储包和queryparser 查询解析包等,以及第三方分词库等。