推荐星级:
- 1
- 2
- 3
- 4
- 5
基于Python的科技情报智能化识别检索系统的研究与设计
资料介绍
科技情报不仅能提供科研人员开展科技研发工作的基本资源,更为科研工作者的研究方向与研究内容提供了决策支持。因此,如何为科技工作者提供多渠道、及时准确的科技情报成为科研院校及企业科技部门亟需面对的问题。本文提出了一个利用Python编程语言定时对动态网页中与本行业相关的科技情报进行数据抓取方法,将获取的有用信息保存到本地数据库中,再使用B/S架构的信息系统为科研人员提供查询及订阅功能。该系统具备较高的实时性及准确性,并已经在企业科技部门中进行使用。
部分文件列表
文件名 | 大小 |
基于Python的科技情报智能化识别检索系统的研究与设计.pdf | 2M |
部分页面预览
(完整内容请下载后查看)Science & Technology Vision
科技视界
科技创新
项目与课题
基于 Python 的科技情报智能化识别检索
系统的研究与设计
贺 洪 煜
上 海 建 工 集 团 股 份 有 限 公 司 中 国 上 海
,
(
ꢁ
ꢀ00080
摘
要 科 技 情 报 不 仅 能 提 供 科 研 人 员 开 展 科 技 研 发 工 作 的 基 本 资 源 更 为 科 研 工 作 者 的 研 究 方 向 与 研
】 ,
【
究 内 容 提 供 了 决 策 支 持 因 此 如 何 为 科 技 工 作 者 提 供 多 渠 道 及 时 准 确 的 科 技 情 报 成 为 科 研 院 校 及 企 业 科 技
。 , 、
部 门 亟 需 面 对 的 问 题 本 文 提 出 了 一 个 利 用
。
编 程 语 言 定 时 对 动 态 网 页 中 与 本 行 业 相 关 的 科 技 情 报 进 行
Python
数 据 抓 取 方 法 将 获 取 的 有 用 信 息 保 存 到 本 地 数 据 库 中 再 使 用
架 构 的 信 息 系 统 为 科 研 人 员 提 供 查 询 及
,
,
B / S
订 阅 功 能 该 系 统 具 备 较 高 的 实 时 性 及 准 确 性 并 已 经 在 企 业 科 技 部 门 中 进 行 使 用
。
。
,
关 键 字 大 数 据 科 技 情 报
】 ;
网 络 爬 虫
;
ꢀython
【
;
中 图 分 类 号
文 献 标 识 码
文 章 编 号
:
:
:
( ꢁ
ꢀ095 - ꢀ457 ꢀ019 11ꢁ007ꢀꢁ003
G351 . 1
A
:
DOI 10 ꢂ 19694 / j ꢃ cnki ꢂ issnꢀ095 ꢁ ꢀ457 ꢂ ꢀ019 ꢂ 11 ꢂ 033
Research ꢀnd Design of of Intelligent ꢁecognition System for Scientific ꢀnd Technologicꢀl
Informꢀtion Bꢀsed on Python
HE Hong - yu
( Shꢀnghꢀi Construction Group , ꢂhꢀnghꢀi 200080 ꢃ Chinꢀ )
【
】
Abstrꢀct Scientific and technological information can not only provide the basic resources for researcher workers ,
but also provide decision support for the research direction and content of scientific research workers . Therefore , how to
provide multi - channel , timely and accurate scientific and technological information for science and technology researcher
workers has become an urgent problem for research institutes and enterprises . This paper proposes a method for data
capture of scientific and technological information related to the industry in dynamic web pages using Python
programming language . This system saves the useful information to
architecture provides scientific research workers searching and subscription features . The system is highly time - sensitive
and accurate and has been used in the corporate technology sector .
a local database , and then the system of B / S
【
】
Key words Big data ; Scientific and technological information ; Python ; Web crawler
近 年 来
各 个 领 域 的 企 业 都 积 极 地 开 展 对 大 数 据 构 用 户 中 其 卓 越 的 性 能 和 稳 定 性 深 受 用 户 欢 迎
,
此
。
,
的 挖 掘 和 利 用 随 着 物 联 网 智 能 设 备 与 互 联 网 的 概
。 、
+
外
在 调 查 了 美 国 的 兰 德 公 司
加 拿 大 科 技 情
) 、
,
(
RAND
念 不 断 普 及
每 天 在 互 联 网 上 产 生 的 数 据 已 经 超 过 报 研 究 所
(
日 本 科 学 技 术 政 策 研 究 所
,
) 、
(
)
NISTEP
CISTI
万 亿 字 节
致 使 这 些 巨 量 的 数 据 无 法 在 短 时 间 内 等 几 家 国 际 著 名 情 报 机 构 的 情 报 分 析 方 法 后 发 现
国
,
,
2 . 5
被 捕 捉 和 处 理 提 炼 成 为 我 们 日 常 有 用 的 数 据
,
大 数 外 典 型 科 技 情 报 机 构 的 情 报 分 析 与 应 用 呈 现 出 工 具
。
据 与 信 息 技 术 的 应 用 融 合 将 科 技 情 报 研 究 工 作 转 变
,
化 系 统 化 与 平 台 化 的 特 征
、 。
为 一 种 基 于 海 量 数 据 的 知 识 发 现 和 知 识 分 析 过 程
科
综 上 分 析 企 业 情 报 部 门 及 科 研 人 员 需 要 获 得 粒
,
,
技 情 报 研 究 已 经 向 数 据 密 集 型 科 学 这 一 新 的 研 究 范 度 更 细 更 精 准 的 科 技 情 报 服 务
" "
亟 需 设 计 开 发 一 套
,
[ 1 ]
式 演 进
企 业 的 科 技 研 发 部 门 肩 负 着 企 业 科 技 创 新 符 合 企 业 实 际 情 况 开 发 灵 活 简 单 易 用 具 备 科 技
、 、 、
。
与 成 果 转 化 的 重 担 科 研 人 员 每 年 必 须 积 极 参 与 国 家 情 报 收 集 与 分 析 功 能 的 软 件 平 台 系 统
,
语 言 是
。
Python
及 地 方 各 部 委 发 布 的 科 研 课 题 从 而 获 得 科 研 经 费 的 支 一 种 功 能 强 大 的 具 有 解 释 性
交 互 性 和 面 向 对 象 的
、
撑
在 海 量 数 据 的 环 境 下 真 正 需 要 的 有 价 值 的 知 识 第 四 代 计 算 机 编 程 语 言 它 开 发 代 码 的 效 率 非 常 高
, , ,
。
被 淹 没 准 确 的 科 技 情 报 收 集 工 作 不 但 占 用 了 科 研 人 具 有 强 大 和 丰 富 实 用 的 第 三 方 标 准 库 使 得 编 程 变 得 简
, ,
员 宝 贵 的 时 间 不 能 很 好 地 为 企 业 的 科 研 工 作 提 供 保 洁 快 速 并 支 持 广 泛 的 应 用 程 序 开 发 从 简 单 的 文 字 处 理
, ,
[ 2 ]
障
到 基 于
的 开 发 及 游 戏 设 计 的 应 用
使 用 基 于
。
。
Web
的 网 络 爬 虫 应 用 不 仅 可 以 实 时 监 控 提 供 科 技
Python
作 为 国 家 知 识 库 的 概 念 中 国 知 网
,
拥 有 世
(
)
,
CNKI
界 上 最 大 的 中 文 知 识 信 息 资 源 数 据 库
每 天 提 供 数 千 情 报 的 网 站 发 布 的 所 有 信 息
并 且 还 能 进 行 关 键 字
,
,
种 信 息 检 索 服 务 且 其 平 台
,
服 务 于 包 括 欧 美
日
等 的 过 滤 无 需 人 工 干 预 就 能 向 指 定 的 用 户 提 供 有
, ,
、
KBase
本 在 内 的 发 达 国 家 并 取 得 了 成 功 在 全 球
, 。
个 机 效 信 息 的 推 送
。
5 , 000
基 金 项 目 上 海 市 经 信 委 专 项 资 金 项 目
:
沪
上 海 建 工 集 团 数 字 建 造 体 系 研 究
) ; ꢀ
17JCYJ ꢁ
(
※
J - 2018 - ꢀ7
ꢁ 。
07
科技视界
7ꢀ
Science & Technology Vision
Science & Technology Vision
科技视界
项目与课题
科技创新
为
的
标 签 并 通 过 循 环 语 句 将 所 有
,
for
" page - link "
div
系 统 的 主 要 功 能 及 目 标
1
的
链 接 的 名 字 以 字 符 串 类 型 赋 值 给 了
变
titles
HTML
根 据 前 期 对 企 业 科 研 部 门 调 研
本 文 所 研 究 的 基
,
量
。
于
的 科 技 情 报 智 能 化 识 别 检 索 系 统 需 要 实 现 以
Python
爬 虫 程 序 另 一 个 重 要 的 功 能 是 把 从 网 页 中 采 集 到
下 功 能 定 时 从 系 统 预 设 的 网 络 渠 道 获 取 最 新 发 布 的
:
的 信 息 保 存 为 文 本 文 件 并 作 为 附 件 通 过 电 子 邮 件
, ,
科 研 情 报
建 立 可 视 化 科 技 情 报 智 能 化 识 别 检 索 系
;
发 送 给 科 研 人 员 进 行 阅 读 这 个 功 能 就 是 把 网 页 中 的
。
统
用 户 还 可 自 行 订 阅 相 关 类 型 或 关 键 字 的 情 报
系
。
,
非 结 构 化 或 半 结 构 化 数 据 保 存 为 结 构 化 数 据
本 节 之
。
统 建 设 完 成 后 能 推 广 至 集 团 及 下 属 子 集 团 各 科 研 单
,
前 提 到 的
是 一 个
或 者
格 式 的 半
xml
ResposneBody
json
位 进 行 使 用
。
结 构 化 数 据 对 象 数 据 无 法 让 读 者 直 观 读 懂
,
而 将 文
,
件 保 存 到 数 据 库 表 以 及
大 大 增 加 数 据 的 可 读 性
文 件 这 类 结 构 化 数 据 将
,
excel
系 统 的 功 能 设 计
2
。
系 统 的 设 计
2 . 1
消 息 订 阅 模 块
2 . 3
本 系 统 程 序 设 计 分 为 两 大 模 块
通 过
)
网
ꢀython
: (
1
本 文
中 叙 述 的 网 络 爬 虫 程 序 将 所 获 新 的 科 技
2 . 2
络 爬 虫 程 序 抓 取 可 自 定 义 类 型 及 关 键 字 的 科 技 情 报
,
情 报 保 存 进 数 据 库 后
系 统 后 台 会 定 时 发 起 一 个
,
将 非 结 构 化 数 据 按 指 定 格 式 保 存 到 数 据 库 中
建
)
; (
2
定 时 抽 取 数 据 的 任 务
并 与 系 统 中 用 户 订 阅 信
,
ꢀython
立 基 于
架 构 的 可 视 化 管 理 平 台 可 实 现 包 括 用 户
,
B / S
息 相 互 匹 配 将 最 新 情 报 生 成 一 个
,
文 件 并 通 过 电
word
管 理 信 息 检 索 内 容 订 阅 数 据 维 护 日 志 管 理 等 功
、 、 、 、
子 邮 件 的 形 式 发 送 给 订 阅 过 该 类 信 息 的 科 研 人 员
为
。
能
程 序 设 计 功 能 框 架 如 图 所 示
。
1
。
了 提 高 消 息 订 阅 的 实 时 性 将 来 可 设 计 从 微 信 公 众 号
,
绑 定 此 定 时 任 务 用 户 可 实 时 查 看 最 新 科 技 情 报
,
。
可 视 化 管 理 平 台
为 使 科 研 人 员 能 够 在
2 . 4
移 动 端 检 索 科 技 情 报 信
、
ꢀC
息
必 须 建 立 基 于
的 跨 平 台 可 视 化 管 理 系 统
,
。
HTML5
科 研 人 员 在 登 录 系 统 后 可 使 用 信 息 检 索
,
信 息 订 阅
、
服 务 系 统 管 理 员 可 以 堆
;
列 表 用 户 账 号 进 行 维
、
URL
护
对 系 统 异 常 日 志 进 行 分 析 和 处 理
,
。
系 统 用 户 可 通 过 关 键 字 情 报 来 源 发 布 日 期 的 范
、 、
图
程 序 设 计 功 能 框 架 图
1
围 对 数 据 库 中 的 科 技 情 报 进 行 检 索 并 可 通 过 导 出
excel
文 件 的 形 式 把 情 报 列 表 导 出 至
或 移 动 端 除 此 之 外
。
,
ꢀC
基 于
的 网 络 爬 虫 程 序
2 . 2
ꢀython
用 户 可 以 对 新 情 报 的 关 键 字 情 报 来 源 进 行 订 阅 后 台
、 ,
网 络 爬 虫 是 一 种 按 照 规 则 对
信 息 进 行 遍 历
,
Web
将 会 通 过 定 时 任 务 实 时 推 送 至 用 户 设 定 的 邮 箱
。
[ 3 ]
自 动 抓 取 万 维 网 信 息 的 程 序 或 脚 本
网 络 爬 虫 的 主 要
。
系 统 管 理 人 员 除 了 可 对 用 户 进 行 管 理 之 外
还 可
,
原 理 是 从 预 置 的 地 址 集 合 中 遍 历
URL
页 面 所 有
HTML
以 对 情 报 来 源 的
进 行 维 护 对 信 息 来 源 的
,
进
URL
URL
的 内 容 并 根 据 不 同 的 需 求 采 集 当 前 页 面 或 者 下
,
级 子
N
行 开 关 设 定
作 为 一 种 网 络 爬 虫 使 用 的 是 网 络
,
。
ꢀython
页 面 中 的 有 效 信 息 最 后 把 网 页 中 的 非 结 构 化 数 据 转 存
,
层 的
协 议 即 发 送 请 求 相 应 请 求 返 回 结 果
,
'
在
,
http
'
到 结 构 化 数 据 库 中 简 单 可 描 述 为 预 置
。 :
地 址
遍
->
URL
这 个 过 程 中 由 于 网 络 状 况 的 不 稳 定 以 及 对 方 服 务 器
,
历
页 面
获 取 有 效 信 息
结 构 化 存 储
。
HTML
->
->
中 提 供 了 十 分 强 大 的 能 够 操 作
ꢀython3
的 自 身 问 题 经 常 会 返 回
,
用 于 告 知
:
" 404 Bad Request
包 为
urllib
客 户 端 发 送 了 一 个 错 误 的 请 求 或 者
,
"
" 500 Internal
功 能 的 库 例 如 使 用
。 ,
能 够 打
URL
urllib . request . urlopen
服 务 器 遇 到 一 个 妨 碍 它 为 请 求 提 供 服 务
:
Server Error
开 并 爬 取 一 个 网 页 具 体 实 现 的 方 法 为
,
打 开 某 个 指
:
[ 5 ]
的 错 误 等 状 态 码
"
因 此 在 系 统 日 志 中 某 个
集
。
URL
定
地 址
获 取
返 回 对 象 并 读 取 其
URL
ResposneBody
细 化 加 工
,
HttpResponse
中 发 现 同 类 错 误 状 态 码 时 需 要 亲 自 验 证 该
,
是 否
URL
然 后 通 过 预 置 的 算 法 对 返 回 对 象 进 行 精
,
已 经 更 改 并 提 交 系 统 开 发 人 员 更 新 相 应
,
的 爬 虫
URL
在 实 际 爬 虫 程 序 从 网 页 抓 取 数 据 的 过 程
。
程 序
。
中
可 以 使 用
这 一
的 第 三 方 库
,
ꢀython
,
Beautiful Soup
案 例 实 现
以 抓 取 国 家 科 技 部 的 某 项 信 息 为 例
2 . 5
功 能 包 括 解 析
文 档
修 复 含
、
、
HTML XML
Beautiful Soup
程 序 实
,
ꢀython
有 未 闭 合 标 签 等 错 误 的 文 档
此 种 文 档 常 被 称 为
(
tag
现 方 式 如 以 下 步 骤
:
这 个 扩 展 包 为 待 解 析 的 页 面 创 建 一 棵 树 以 便
,
) 。
soup
构 造 浏 览 器 头 文 件 模 拟 浏 览 器 访 问 指 定
,
(
)
1
[ 4 ]
提 取 其 中 的 数 据 这 在 网 络 数 据 采 集 时 非 常 有 用
,
举
。
:
URL
一 个 简 单 例 子
:
url = " http : / / service . most . gov . cn / *** "
headers = { 'User - Agent' : 'Mozilla / 5 . 0 ꢁ Windows NT
10 . 0 ; Win64 ; x64 ) AppleWebKit / 537 . 36 ꢁ KHTML , like
Gecko ) Chrome / 64 . 0 . 3282 . 140 Safari / 537 . 36' }
分 析 页 面 源 代 码 找 出 具 有 唯 一 性 的
初 始 化
soup = BeautifulSoup ( html ) / /
其 中 得 到 的 可 以 理 解 为 把
页 面 中 的 树
soup
HTML
ꢀython
提 供 了 强 大 的
状 结 构 的 所 有 节 点 按 照 一 定 方 式 保 存 到
程 序 可
用 来
AꢀI
以 解 析 的 对 象
。
Beautiful Soup
结
(
)
,
2
HTML
class='title'
的 代 码 行 然 后 构 造 指 定 通 知 列 表 的 数 据 结 果 集 包 括 通
解 析 这 个
对 象 采 集 其 中 有 用 的 信 息
,
紧 接 着 上
。
soup
构
此 案 例 中 数 据 列 表 的 特 征 为 所 有 标 签 中
a
,
面 的 代 码 段
:
。
,
lists = soup . find_all ꢁ 'div' , class_ = 'page - link' )
for li in lists :
知 公 告 名 称 通 知 公 告 链 接 发 布 时 间 等 信 息
、 、 :
查 找 所 有
标
a
h1s = soup . find_all ꢁ 'h1' , limit = 12 ) #
titles . append ꢁ li . a . string )
签 中
的 语 句
class = ꢂtitleꢂ
这 个 变 量 获 取 了
对 象 中 所 有 的
的 值
lists
soup
css
科技视界
Science & Technology Vision
73
全部评论(0)