APP下载

图书馆电子资源自主培训程序的设计与实现
——以中国知网为例

2016-11-10朱玉强山东师范大学图书馆

图书馆理论与实践 2016年5期
关键词:网页检索自动

朱玉强(山东师范大学图书馆)

图书馆电子资源自主培训程序的设计与实现
——以中国知网为例

朱玉强(山东师范大学图书馆)

设计并实现图书馆电子资源自主培训程序,解决培训讲座上座率低、效果差问题。使用Visual Basic 6.0编程,自动操控网页文档对象。完成了“菜单导航”和“智能预测”模块,实现了数据库功能区介绍、数据库浏览及检索演示、文献利用演示等功能。但程序只能工作于Trident内核浏览器。结论:程序功能确切,为图书馆用户培训工作提供了新方法。

网页文档对象;自主培训;电子资源

1 引言

随着近年来SNS社交网络、移动终端APP等的迅猛发展,人们越来越热衷于非会面式、不囿于时空的虚拟交往。由此,高校图书馆读者培训工作遭遇了前所未有的挑战,突出问题是读者上座率低。邓玉等[1]向中国科学院大学在校生发放调查问卷150份,收回有效问卷109份,其中只有5%的调查对象表示经常参加图书馆培训讲座,高达47%的调查对象则表示从未参加过;张佳佳[2]考察了首都师范大学、苏州市职业大学、吉林大学农学部及遵义医学院4家高校图书馆,其中苏州市职业大学中未参加过图书馆培训讲座的读者高达78.87%。海岚等[3]分别选取国内39所“985工程”院校图书馆及世界排名前40位(据2013~2014年《泰晤士报高等教育副刊》)的高校馆作为调研对象,发现国外高校馆在读者培训讲座上呈专业化、定制化和虚拟化特征,而国内重在现场讲座,电子培训资源的开发与建设则较为迟缓。

图书馆可以充分利用网络的便利,结合自动化技术,为用户提供更加人性化、智能化、不受时间和空间约束的自主培训方案来应对用户培训上座率低、效果差的问题。网络环境下的自主培训方案是传统课堂式、小班化、面对面教学的有益补充甚至是升级替代方案。本文使用Visual Basic 6.0编写程序,以中国知网为例,从“菜单导航”和“智能预测”两个方面实现用户自主培训,以期抛砖引玉。

2 相关研究

不少机构、学者对提升用户培训上座率及教学质量进行了有益的尝试。在改变原培训形式方面,CALIS全国农学文献信息中心于2010年面向32家农业院校图书馆试行“培训大使”项目。中心先培训各馆派出的一位“大使”,再由此“大使”负责该馆用户培训工作,将读者从单纯被教育变成培训工作参与者。[4]兰小媛[5]、王宝英[6]、汪满容[7]、张孝飞[8]将传统“新生入馆教育”教学、考试等内容通过网页移植至互联网。秦长江[9]考察了国内外主要MOOC(网络在线教育课程)平台及其特点,从图书馆资源建设、信息检索、知识组织角度探讨了MOOC给图书馆读者培训等工作带来的机遇。在应用成熟网络软件、移动APP方面,苏建华等[10]对比了国内外SNS(Social Networking Services,社会性网络服务)研究及利用现状,发现国内更侧重理论研究,与国外SNS实践有较大差距。杜辉等[11]建立了基于微信的学科服务工作模式。在自主开发或基于开源软件二次开发方面,姚飞等[12]基于开源软件A.L.I.C.E开发出实时智能聊天机器人“小图”用于虚拟参考咨询及用户培训工作,后开发“小图”移动APP扩展服务领域。[13]罗涛等[14]基于BotPlatform平台设计并实现图书馆MSN咨询机器人。张静鹏等[15]利用开源软件Moodle设计并实现开放式用户培训系统,搭建了东北师大图书馆网络培训平台。潘燕桃等[16]提出一个图书馆用户网络自主培训系统模型。

上述研究在增进读者参与主动性方面均做出了非常有益的尝试,本文在软件智能性及人机交互灵活性方面做了更多努力。

3 系统设计思路及方案

系统由“菜单导航”和“智能预测”两个模块组成,详见图1。主要技术方案、流程如图3所示。

图1 系统模块

在菜单导航中,用户可主动选择软件中的“数据库功能区介绍”、“数据库浏览演示”、“数据库检索”及“文献利用”四项菜单自主学习相关数据库的使用方法。以相对复杂的“数据库检索”子模块为例,程序框图如图2所示。

开启“智能预测”功能后,软件周期性记录鼠标在中国知网自上次点击后悬停的位置和时长,据此可基本预测用户即将对哪个或哪些功能区进行操作,进而给出操作提示,或自动为用户演示操作方法。记录及预测均在用户电脑完成计算,不涉及隐私泄露问题。

4 关键方法与技术

4.1 枚举Internet Explorer句柄内网页元素

算法伪代码如下。

图2 “数据库检索”子模块

图3 技术要点

输入:Internet Explorer句柄Hwnd。

输出:网页元素数组A。

开始

01枚举Hwnd子窗口句柄,得句柄数组H;//使用EnumChildWindows

02筛选H,取其中类名为Internet Explorer_ Server的子句柄Hwnd_ies;

03注册名为“WM_HTML_GETOBJECT”的消息值msg;//使用RegisterWindowMessage

04以msg为参数,向Hwnd_ies发送消息,得资源编号res;//使用SendMessage

05处理res,得网页文档对象obj;//使用ObjectFromLresult

06当obj含框架页时进入循环

07如果含跨域框架;//框架内网址域名与主页面的不同

08取跨域框架集F1;//调用IServiceProvider接口

09如果含普通框架;//框架内网址域名与主页面的相同

10取普通框架集F2;//读obj对象性属性“frames”

11循环体结束

12令obj主页面为框架集F3;

13令F=F1+F2+F3,枚举F内部所有具体网页元素,得网页元素数组A;//使用getElementsBy Name、getElementByID、getElementsByTagName等14输出A。

结束

4.2 自动操控网页元素

针对网页元素,软件涉及自动点击按钮及超链接、选中或取消单选框或复选框、点选下拉框、取LABEL文本、使指定Internet Explorer句柄跳转到指定网址、置元素焦点等。

打开中国知网“文献”选项卡高级检索的界面,“SELECT”元素内容为“全文”、“Text”文本框为“电子图书馆”。以此为例,算法伪代码如下。

输入:4.1所得数组A。

开始

01枚举A,取标签名为“SELECT”、ID为“txt_1_sel”的网页元素S;取标签名为“INPUT”、ID为“txt_1_value1”的网页元素T;

02置S“selected Index”属性值为4;

03激发S“onchange”事件;//使用fireEvent

04置T“value”属性值为“电子图书馆”。

结束

4.3 智能预测用户操作并提示或演示操作

“输入检索控制条件”是一个功能区,其HTML源码由“

以“

开始

01当鼠标停止动作时长不小于用户设置时长,取鼠标指针下窗口句柄;//设置时钟周期检测

02如果鼠标指针下句柄类名为“Internet Explorer_Server”且浏览网址含“cnki.net”

03取该Internet Explorer_server内含所有网页元素,写入数组A;

04枚举A中标记为“DIV”的元素,写入数组B;

05枚举数组B,取距离鼠标指针当前位置最近的“DIV”元素,记作C,设置为将闪烁边框的对象;

06读C“id”、“class”等属性,检索常量数据库,匹配其功能简介文本或下一步可能的操作提示文本T;

07取桌面句柄及桌面设备场景DeskTopDC;//准备闪烁C边框

08取C元素矩形,建立新画笔,载入DeskTopDC,循环绘制、清除矩形。超指定闪烁时长后,清除画笔,释放DeskTopDC;//结束闪烁C边框

09以C元素左边、顶边为横、纵坐标,使用HTML+CSS技术或Windows标准控件显示文本提示T;

10检索数据库,取回鼠标位于或临近C元素用户可能的后续操作,询问是否需要软件演示操作

11如果用户选择需要演示

12执行自动演示;//参考4.2

13如果结束

14如果结束

结束

4.4 自动粗略构建检索策略

“数据库检索”子模块首先提示用户输入想要检索的课题或选题名称,之后软件自动提取该短句检索词,进而构建检索式。

关键词提取方面,本软件从精度(Precision)、召回率(Recall)、F值(F-mesure)三个维度重点考察了中科院张华平博士NLPIR汉语分词系统[17]和万方数据知识服务平台“查新/跨库检索”中的“推荐检索词”功能,选择调用后者功能粗略切割、提取检索词。以“好莱坞电影产业对古希腊神话的开发”选题为例,万方数据切割的检索词有“希腊神话”、“好莱坞”和“电影产业”3个。

中国知网“专业检索”模块支持“检索语法表达式”,软件可随机构建类似“TI='好莱坞'and(KY% '希腊神话'+'电影产业')”的检索式送入“专业检索”模块执行检索。考虑到本软件基本面向初阶用户,仅在“高级检索”区进行自动演示。即,按4.2所述方法随机自动选取检索入口,在各检索入口随机自动填写检索词,再执行检索。

运行过程中,获得的检索词未必科学准确,检索入口及自动填至各检索入口的检索词均为随机选取,仅作演示。软件明确提示用户手检时需根据自身知识储备、对课题的理解科学规范地提炼检索词、制定检索策略。软件根据用户设置的预期结果条数,判断每次检索所得结果多寡。如结果少于用户设置结果数,自动放宽各检索入口,如将“篇名”入口调整为“主题”等,并提示用户调整的原因及方法。

4.5 文献利用:自动演示文献下载、打开并进行文字识别等

此模块功能包括:取待下载文献;正式下载;打开文献;调用阅读器OCR功能等。

中国知网检索结果显示区为普通框架页,枚举网页元素,筛选其中含“分享”文本串的,即可精准定位该框架,继而可随机分离出某条具体文献题名和网址以供下载演示。打开××文献网址,筛选链接文本为“PDF下载”的href元素,自动单击,可调出文献下载保存框。根据窗口标题和类名,取该对话框句柄,使用SendMessage操作该句柄可实现自动下载,存储位置记作P。调用ShellExecute打开P,使用PDF阅读器提供的API接口实现文字识别,或直接模拟鼠标、键盘操作进行文字识别等,此不赘述。

5 应用效果评估

使用Visual Basic 6.0编制程序,测试表明程序兼容WinXP(SP3)、WIN7(SP1)、WIN8、8.1操作系统,其中WIN7、8、8.1又分32位和64位系统。在各操作系统中分别、连续运行7×24小时,未见崩溃。

笔者通过“一小时讲座”、学科馆员QQ群派发软件和纸质、电子版(http://www.sojump.com/jq/5457385. aspx)问卷,收回有效答卷213份,软件核心指标得分结果为:现有功能4.4分,智能化水平3.8分,界面友好程度4.6分,界面美工4.5分,以上项目分值满分均为5分。图4展示软件接收用户输入课题名称后,①自动提取检索词,使用气泡提示建议的检索词;②在“高级检索”界面随机自动选择检索入口并随机填写检索词后自动单击“检索”;③用户闲置鼠标30秒后(用户可自行设置秒数),程序取回距鼠标位置最近的网页元素,在该元素处根据元素属性值给出的气泡提示。

图4 开启“智能预测用户操作”、自动构建检索策略并自动执行高级检索后各气泡提示

6 结语

本文使用Visual Basic 6.0编制程序,以中国知网为例介绍了程序功能模块、技术路线及达到的效果。对解决当前图书馆尤其是高校图书馆读者培训工作上座率低、效果差提供了一种可能的新方法,具有推广价值。

[1]邓玉,张靖.高校图书馆用户培训工作的创新——基于中国科学院大学图书馆的调研分析[J].图书馆杂志,2015(1):60-65,59.

[2]张佳佳.网络时代我国高校图书馆读者培训工作调查与分析[J].高校图书馆工作,2011(3): 76-79.

[3]海岚,等.国内外高校图书馆读者培训讲座的调查与分析[J].图书馆,2014(6):85-88,109.

[4]姜仁珍.培训大使——高校图书馆读者培训的创新与实践[J].图书馆论坛,2015(3):68-72.

[5]兰小媛,潘卫.网络时代大学新生的图书馆教育新探索——以上海交通大学图书馆“新生专栏”设计为例[J].图书馆杂志,2013(6):54-57.

[6]王宝英.高校图书馆网站“新生入馆教育平台”构建情况分析——以26所“211工程”院校图书馆为例[J].图书馆学研究,2013(6):44-47,52.

[7]汪满容,等.一种新型自主式新生入馆教育培训系统的设计与实践——以江苏大学图书馆为例[J].现代情报,2014(5):135-138.

[8]张孝飞.高校图书馆读者自主教育评估反馈系统的设计与研究[J].四川图书馆学报,2014(5): 61-64.

[9]秦长江.网络在线教育课程:图书馆的机遇和作用[J].图书情报工作,2014(11):83-88.

[10]苏建华,汪初芸.国内外高校图书馆应用SNS的比较研究[J].情报资料工作,2011(2): 102-104.

[11]杜辉,等.基于微信公众平台的高校图书馆学科服务创新[J].图书情报工作,2015(6): 41-45.

[12]姚飞,等.实时虚拟参考咨询服务新尝试——清华大学图书馆智能聊天机器人[J].现代图书情报技术,2011(4):77-81.

[13]姚飞,等.清华智能聊天机器人“小图”的移动应用[J].现代图书情报技术,2014(Z1): 120-126.

[14]罗涛,朱莹.图书馆MSN咨询机器人的研究与实现[J].图书情报工作,2012(19):105-108,68.

[15]张静鹏,田丽君.基于Moodle的高校图书馆用户培训系统的设计与实现[J].图书馆学研究,2010(9):87-90,51.

[16]潘燕桃,道焰.图书馆用户网络自主培训系统构建策略研究[J].图书馆论坛,2014(2): 51-58,50.

[17]张华平.NLPIR汉语分词系统[EB/OL].[2015-04-22].http://ictclas.nlpir.org/.

Design and ImplementofSelf-Training Program for Library Electronic Resources——A Case Study ofCNKI

Zhu Yu-qiang

A self-training program is designed and implemented to solve the problems of low attendance and poor results ofelectronic resources training.It applies Visual Basic 6.0 to automatically operating web document objects.Modules named"Menu navigation"and"intelligent forecast"are programmed to introduce database functionalarea,to show database browsing,retrieval and utilization of literature and so on.The software is limited in Tridentkernelbrowsers,butworks welland provides a new approch for library training.

Web DocumentObject;Self-Training;Electronic Resources

G251.5;G250.7

B

1005-8214(2016)05-0018-04

朱玉强(1978-),男,硕士,山东师范大学图书馆副研究馆员,研究方向:图书情报技术。

2015-10-29[责任编辑]吕晓佩

猜你喜欢

网页检索自动
基于HTML5与CSS3的网页设计技术研究
自动捕盗机
瑞典专利数据库的检索技巧
一种基于Python的音乐检索方法的研究
基于CSS的网页导航栏的设计
基于HTML5静态网页设计
基于URL和网页类型的网页信息采集研究
让小鸭子自动转身
自动摇摆的“跷跷板”
关于自动驾驶