期刊信息
Navigation

刊名:地质科技通报
曾用名:地质科技情报
主办:中国地质大学(武汉)
主管:中华人民共和国教育部
ISSN:1000-7849
CN:42-1904/P
语言:中文
周期:双月
影响因子:0
数据库收录:
文摘杂志;北大核心期刊(1992版);北大核心期刊(1996版);北大核心期刊(2000版);北大核心期刊(2004版);北大核心期刊(2008版);北大核心期刊(2011版);北大核心期刊(2014版);北大核心期刊(2017版);化学文摘(网络版);中国科学引文数据库(2011-2012);中国科学引文数据库(2013-2014);中国科学引文数据库(2015-2016);中国科学引文数据库(2017-2018);中国科学引文数据库(2019-2020);日本科学技术振兴机构数据库;文摘与引文数据库;中国科技核心期刊;期刊分类:地质学
期刊热词:
环境地质工程

现在的位置:主页 > 期刊导读 >

基于Python的科技情报智能化识别检索系统的研(2)

来源:地质科技通报 【在线投稿】 栏目:期刊导读 时间:2020-10-01

【作者】网站采编

【关键词】

【摘要】:for li in lists: () lists 这个变量获取了soup 对象中所有的css 的值为"page-link"的div 标签,并通过for 循环语句将所有的HTML 链接的名字以字符串类型赋值给了tit

for li in lists:

()

lists 这个变量获取了soup 对象中所有的css 的值为"page-link"的div 标签,并通过for 循环语句将所有的HTML 链接的名字以字符串类型赋值给了titles 变量。

爬虫程序另一个重要的功能是把从网页中采集到的信息,保存为文本文件,并作为附件通过电子邮件发送给科研人员进行阅读。这个功能就是把网页中的非结构化或半结构化数据保存为结构化数据。本节之前提到的ResposneBody 是一个json 或者xml 格式的半结构化数据对象,数据无法让读者直观读懂,而将文件保存到数据库表以及excel 文件这类结构化数据,将大大增加数据的可读性。

2.3 消息订阅模块

本文2.2 中叙述的网络爬虫程序将所获新的科技情报保存进数据库后,系统后台会定时发起一个Python 定时抽取数据的任务,并与系统中用户订阅信息相互匹配,将最新情报生成一个word 文件并通过电子邮件的形式发送给订阅过该类信息的科研人员。为了提高消息订阅的实时性,将来可设计从微信公众号绑定此定时任务,用户可实时查看最新科技情报。

2.4 可视化管理平台

为使科研人员能够在PC、移动端检索科技情报信息,必须建立基于HTML5 的跨平台可视化管理系统。科研人员在登录系统后,可使用信息检索、信息订阅服务;系统管理员可以堆URL 列表、用户账号进行维护,对系统异常日志进行分析和处理。

系统用户可通过关键字、情报来源、发布日期的范围对数据库中的科技情报进行检索并可通过导出excel文件的形式把情报列表导出至PC 或移动端。除此之外,用户可以对新情报的关键字、情报来源进行订阅,后台将会通过定时任务实时推送至用户设定的邮箱。

系统管理人员除了可对用户进行管理之外,还可以对情报来源的URL 进行维护,对信息来源的URL 进行开关设定。Python 作为一种网络爬虫,使用的是网络层的http 协议,即发送请求' 相应请求' 返回结果,在这个过程中由于网络状况的不稳定,以及对方服务器的自身问题,经常会返回"404 Bad Request:用于告知客户端发送了一个错误的请求",或者"500 Internal Server Error: 服务器遇到一个妨碍它为请求提供服务的错误"等状态码[5]。因此在系统日志中某个URL 集中发现同类错误状态码时,需要亲自验证该URL 是否已经更改,并提交系统开发人员更新相应URL 的爬虫程序。

2.5 案例实现

以抓取国家科技部的某项信息为例,Python 程序实现方式如以下步骤:

(1) 构造浏览器头文件,模拟浏览器访问指定URL:

url="

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/ Safari/537.36'}

(2) 分析页面源代码,找出具有唯一性的HTML 结构,此案例中数据列表的特征为所有a 标签中class='title'的代码行。然后构造指定通知列表的数据结果集,包括通知公告名称、通知公告链接、发布时间等信息:

h1s = _all ('h1',limit=12)# 查找所有a 标签中class='title' 的语句

for h1 in h1s:

if h1.a ! = None:

(str())

(h1.a.get('href'))

()

(3) 把得到的结果集以结构化数据的方式保存至数据库中:

for i in range(10):

item_result = []

item_result = (titles [i],links [i],dates [i],dates [i],10,titles[i])

(item_result)

insert_(result)

(4)搭建可视化管理平台,通过预设的关键字、信息来源、时间范围等过滤条件,显示在用户界面,如图2 所示:

图2 情报检索界面

3 结束语

本文结合科研工作实际情况,研究并设计了一套科技情报智能化识别检索系统。该系统的数据来源于Python 编写的网络爬虫程序,通过对指定的URL 列表进行数据的抓取,把提取的科技情报保存到数据库并推送给订阅过相关内容的科研人员。利用跨平台可视化的系统界面方便科研人员主动检索科技情报,系统不仅减轻了科研人员获取科研情报的工作压力,还一定程度上提升了企业的科技研发能力。

当然,对大型企业来说,该系统的使用仅仅是对大数据挖掘使用的冰山一角,随着信息技术的发展,企业科技情报服务的远景目标是建立基于数据中心的知识服务平台。这种企业数据中心化的服务平台不仅能提供稳定、高效、持续的科技情报检索服务,智能化的技术情报推送,高效的科技创新课题研究,还能提供各项科技指标的统计分析、行业对标服务与咨询服务[6]。


文章来源:《地质科技通报》 网址: http://www.dzkjqbzz.cn/qikandaodu/2020/1001/399.html


上一篇:《无线互联科技》征稿启事(2019)
下一篇:基于人工智能的科技情报需求自动感知研究<sup