基于网络爬虫的题库生成系统及应用方法与流程

文档序号:24131649发布日期:2021-03-02 18:18阅读:385来源:国知局
基于网络爬虫的题库生成系统及应用方法与流程

[0001]
本发明涉及一种题库生成系统及方法,特别涉及一种基于网络爬虫的题库生成系统及应用方法。


背景技术:

[0002]
为了响应教育信息化的号召,许多高校推行利用计算机技术进行试题库管理和辅助教师组卷的改革。但是大部分还是采用教师手动自主命题的方式来生成试题,传统的方式浪费了教师大量的精力以及时间。在国内,目前也有一些比较成功的在线考试系统存在,如针对高等数学学科的题库系统matbas,南京大学成功发出来的主要针对pascal语言的题库系统和高教司的主要针对知识的组卷系统等,然而这些系统做的并不是非常智能,因为它们中的大部分系统都没有试卷自动生成功能,试题内容不够新颖,考试需要的试题和试卷仍需要人工完成。


技术实现要素:

[0003]
发明目的:
[0004]
本发明提供了一种基于网络爬虫的题库生成系统及应用方法,其目的是解决现有题库系统不能自动生成试卷且试题内容不够新颖的问题。
[0005]
技术方案:
[0006]
一种基于网络爬虫的题库生成系统,该系统包括系统开发框架模块、数据库模块以及服务器,系统开发框架模块连接数据库模块,系统开发框架模块和数据库模块搭建在服务器上;
[0007]
系统开发框架模块内嵌套有爬虫模块、题库管理模块和智能组卷算法模块,三个模块各自分离又相互配合;
[0008]
爬虫模块用于抓取网页当中的试题内容,并通过管理员对试题内容进行初步标记将各类试题存储到源试题资源库模块中;
[0009]
题库管理模块用于将爬虫模块动态搜集的网络习题资源按照知识点存储到试题资源库中,为智能组卷模块提供试题题源;
[0010]
智能组卷算法模块用于以知识点为基础对试题进行碎片化管理,并在组卷时对试题进行筛选组成一套完整的试卷;
[0011]
数据库模块包括源试题资源库模块和用户试题资源库模块;
[0012]
源试题资源库模块用于存储初标记后的试题资源信息,该模块为任课教师创建试题资源库提供题源;
[0013]
用户试题资源库模块用于存储用户自定义的课程信息、用户收录的试题资源以及用户已经生成的试卷资源。
[0014]
服务器为flask框架自带的wsgi服务器。
[0015]
一种基于网络爬虫的题库生成系统的应用方法,包括以下步骤:
[0016]
1)试题收集、更新:包括爬虫模块抓取的试题和用户编写的试题,将收集的试题存储至源试题资源库模块中;
[0017]
2)创建提纲:将根据用户自身需求自定义课程大纲保存至用户试题资源库模块;
[0018]
3)试题筛选:对用户试题资源库模块中抽取的试题,标记试题的分值和难易程度级别,并保存至用户试题资源库模块,重复的试题不进行保存;
[0019]
4)试卷生成:智能组卷算法模块从用户试题资源库模块中保存的试题中抽取试题,组成试卷。
[0020]
步骤1)中爬虫模块抓取url爬取到网页中的试题资源,并对抓取的试题资源进行试题类型的标记,最后存储至源试题资源库模块中。
[0021]
步骤4)智能组卷算法模块的智能组卷算法包括:
[0022]
step1通过对知识点和试题的分析,将每门课程内的试题进行量化,获得碎片化试题;
[0023]
step2通过对碎片化试题之间相互关联关系进行梳理,确定智能组卷的约束条件;
[0024]
step3采用弹性捜索引擎检索,并对不同的索引关键字添加权重,最后组卷。约束条件包括:
[0025]
条件1:试卷中试题i的分数,n为试卷试题总数,试卷的分数要达到满分;
[0026]
条件2:试卷中试题i的难度值,n为试卷试题总数,试卷的难度根据用户的要求确定;
[0027]
条件3:试卷中试题i的曝光度<对应章节中对应题型的试题平均曝光度;
[0028]
条件4:试题的近期被选过的标志位为false,保证相邻两次试卷所选试题的重复率低。
[0029]
优点效果
[0030]
本发明使用网络爬虫技术,遍历web空间,不断从一个站点移动到另一个站点,自动建立索引,将各个地方的试题整合到数据库中,试题内容新颖,将各类试题进行分类并自动组卷,用户可以在线浏览,也可以通过传统的方法进行打印。本发明为教师量身定做,为教师教学提供支持,进一步提升教学质量。
附图说明
[0031]
图1本发明系统功能设计图。
具体实施方式
[0032]
以下结合说明书附图更详细的说明本发明。
[0033]
本发明开发出一套可以通过爬取网络资源自动更新试题资源的web试卷自动生成系统可以大大减轻授课教师的工作量,题库系统能自动生成试卷且试题内容新颖,并在一定程度上提高了组卷的效率,是一项很有意义的工作,同时也是现实的迫切需求。
[0034]
基于网络爬虫的智能题库生成系统,可分为两个版本,版本一分为试题收集,试题
整理和组卷管理三大功能模块,其中试题收集模块实现了管理员手动添加试题实现数据库更新功能,试题整理模块实现了课程分类、题型分类、章节分类、难度分级、试题分值和试题曝光度六大功能,组卷管理模块实现了智能组卷、手工组卷和试卷设置三大功能;版本二在版本一的基础上添加了网络爬虫自动添加试题资源的功能,以此来提升试题资源更新的效率,解决试题内容不新颖的问题,具体的功能模块图如图1所示。数据库方面,本项目共设计了12个表,用于用户基本信息和试题资源信息的存储,具体的数据库总览表如表1所示。
[0035]
表1数据库总览表
[0036][0037][0038]
如图1所示,普通用户,以未登录状态浏览网站页面,本网站只提供在线资源查看功能,且只提供近期生成的10套试题资源;
[0039]
创建提纲:用户可根据自身需求创建课程提纲,创建的过程为创建课程,创建课程章节,创建章节知识点;
[0040]
试题筛选:用户可根据自身需求从源试题资源数据库中选出若干题目,并根据需要将筛选出的试题按照创建的提纲添加到用户自己的试题资源库中;
[0041]
试卷生成:用户从自己的试题资源库中根据需求选择对应知识点下各类试题的数目,系统会根据曝光度、难易程度等因素筛选出最匹配的试题,并生成一套完整格式的试卷;
[0042]
爬虫资源更新:管理员可以在后台填写url,并选择所属课程,系统便会自动爬取该url下对应页面的试题资源,并在内容展示栏中进行展示,管理对试题进行简单排版后,便可上传至数据库,对试题资源进行更新;
[0043]
以上为本系统的主要功能,除此之外,本系统还大量使用了缓存等技术,以此来提高系统检索效率。
[0044]
为实现上述功能,本发明采用以下技术方案:一种基于网络爬虫的题库生成系统,其特征在于:该系统包括系统开发框架模块、数据库模块以及服务器,系统开发框架模块连接数据库模块,系统开发框架模块和数据库模块搭建在服务器上;
[0045]
系统开发框架模块内嵌套有爬虫模块、题库管理模块和智能组卷算法模块,三个模块各自分离又相互配合;
[0046]
爬虫模块利用网页当中试题内容都在指定html标签中的规律来抓取网页当中的试题内容,并通过管理员对试题内容进行初步标记将各类试题存储到源试题资源库模块中。
[0047]
题库管理模块用于将爬虫模块动态搜集的网络习题资源按照知识点存储到试题资源库中,为智能组卷模块提供试题题源;
[0048]
智能组卷算法模块是以知识点为基础对试题进行碎片化管理,并在组卷时考虑试题类型、区分度、曝光度等因素对试题进行筛选组成一套完整的试卷。
[0049]
数据库模块为mysql5,包括源试题资源库模块和用户试题资源库模块,源试题资源库模块用于存储初标记后的试题资源信息,该模块为任课教师创建试题资源库提供题源;用户试题资源库模块存储用户自定义的课程信息、用户收录的各类试题资源以及用户已经生成的试卷资源等信息。
[0050]
系统开发框架模块为flask框架,flask框架轻巧、简洁并且扩展性强,提高了系统的可维护性,便于后期维护和扩展。
[0051]
服务器为flask框架自带的wsgi服务器。
[0052]
本发明基于网络爬虫的题库生成系统的建立,其包括以下步骤:
[0053]
1)利用系统开发框架模块、数据库模块以及服务器搭建基本的系统框架;
[0054]
2)开发智能组卷算法模块和爬虫模块,并嵌套至开发框架当中;
[0055]
3)管理员根据url爬取网页中试题资源丰富源试题资源库模块,用户根据自身需求从源试题资源库模块中抽取试题丰富个人试题资源库。
[0056]
本发明基于网络爬虫的题库生成系统的应用方法,其包括以下步骤:
[0057]
1)管理员在后台利用爬虫模块根据url爬取到网页中的试题资源,并对抓取的试题内容进行试题类型的简单标记,最后存储至源试题资源库模块中;
[0058]
2)普通用户在前台根据自身需求自定义课程大纲,大纲按照级别可创建课程、课程章节以及章节知识点,并保存至用户试题资源库模块中;
[0059]
3)普通用户根据自身需求从源试题资源库模块中抽取指定数量的试题,标记试题分值和难易程度级别,并选择性的保存到指定课程、章节和知识点下,即重复的试题不进行保存,不重复的试题用户选择性的保存到用户试题资源库模块中,以便后期根据知识点组成一套完整全面的试卷;
[0060]
4)普通用户根据自身需求指定各个知识点下各类型试题的数量以及试卷的难易程度级别,智能组卷算法模块从用户试题资源库模块中根据知识点抽取指定数量的试题,并在抽取的过程中优先考虑曝光度级别低的试题,同时计算分值和难易程度,保证分值为100分,平均难易程度级别为用户指定的用户级别,以此来实现组成试卷的随机性、全面性、创新性以及低重复率;
[0061]
5)普通用户除了从源试题资源库模块中抽取试题保存至用户试题资源库模块中,
也可以自己编写试题录入到用户试题资源库模块中;
[0062]
6)组成的试卷可在线阅览,也可以打印使用。
[0063]
对产品质量的评估
[0064]
功能性:本产品中各项基本功能均已经实现,并进行了大量的样例测试均可运行。
[0065]
可靠性:程序能对大多数异常进行处理,通常不会崩溃。
[0066]
易用性:系统界面整洁干净,标识明确,对于大多数用户均可在不参考用户手册的情况下使用本系统。
[0067]
效率:系统中使用了多线程和缓存等技术,并对智能检索算法进行了优化,提高了系统的运行效率。
[0068]
维护性:本产品基于flask框架进行开发,flask框架的特点是轻巧,简洁并且扩展性强,这样就提高了系统的可维护性,便于后期扩展。
[0069]
可移植性:本产品可在linux环境下兼容,在用户使用方面,chrome、firefox、ie10及以上版本浏览器均可支持。
[0070]
对技术方法的评估
[0071]
系统开发框架模块:本产品是以flask框架为主体,flask web框架是家族里比较年轻的一个,这使得它吸收了其他框架的优点,并且把自己的主要领域定义在微笑项目上,同时,它是可扩展的,flask让开发者自己选择用什么数据库插件存储他们的数据,是一个面向简单需求和小型应用的微框架,很多功能简单但是性能卓越的网站就是基于flask框架而搭建的,在产品开发过程中,选区的语言为与flask框架无缝链接的python语言,进一步提高了系统的高效性。智能组卷算法:本发明在对近些年国内外在线教育和在线考试系统的相关文件进行分析的基础上,结合一线教学的实际情况,设计实现了一种面向碎片化的智能题库系统,具体方案如下:(1)首先通过对知识点和试题的分析构建了试题组织模型,通过对模型的设计总结出在试题的组织上采用与知识点相关联的策略,通过对知识点的系统化,有效的对碎片化试题之间相互关联关系进行梳理,从而使智能题库系统能更好的组织和管理试题;试题组织模型为将试题的难度值分为五级,分别为难题-5、较难的题-4、中等难度的题-3、较容易的题-2和容易的题-1;试题分数是由授课教师根据题型自行设定的;对每道题都设置标志位,表示近期是否被抽选过;对每道题计算总计曝光度,即总的被选次数。(2)在对试题的基本属性进行深入分析的基础上,结合试题的关键属性如试题类型、区分度、曝光度等进行综合考虑,确定智能组卷的约束条件;约束条件包括:条件1:型、区分度、曝光度等进行综合考虑,确定智能组卷的约束条件;约束条件包括:条件1:试卷中试题i的分数,n为试卷试题总数,试卷的分数要达到满分;条件2:试卷中试题i的难度值,n为试卷试题总数,试卷的难度根据用户的要求确定;条件3:试卷中试题i的曝光度<对应章节中对应题型的试题平均曝光度,试卷中的每一道题要尽可能是最少使用或最久未被用过的;条件4:试题的近期被选过的标志位为false,保证相邻两次试卷所选试题的重复率尽可能地低。(3)其次对于试题、知识点等资源的检索上,采用弹性捜索引擎,并对不同的索引关键字添加权重,提高试题等资源检索的效率,最终组卷。
[0072]
网络爬虫:为了系统高效地存储和更新试题,本发明内部封装了网络爬虫以及相
关组件。爬虫模块利用网页当中试题内容都在指定html标签中的规律来进行抓取,并通过管理员对试题内容进行初步标记将各类试题存储到源试题资源库模块中,从而更新源试题资源库模块。
[0073]
网络爬虫与系统平台的结合:本产品在后台封装了爬虫模块,管理员只需要填写相应的url即可获取该url下的所有试题内容,在此基础上,即可实现批量添加,大大提高了效率。构建了一个试题来源广泛,题目多种多样的较为完备的题库。
[0074]
在项目维护方面,本系统的开发框架是flask框架,flask自由、灵活、可扩展性强,第三方库的选择面广,为系统的后期维护和扩展提供了帮助,其次,flask作为一个轻量级框架,也方便了后期程序员的维护。
[0075]
在项目推广方面,由于考试仍作为考核教师工作和学生表现的一种主要方式,所以本系统具有较强的推广意义和实际意义。推广本系统不仅能够节省教师大量的时间,而且在后期,我们将会推广学生端以及开发出受众更广的手机端应用,将有效地提高学生的学习成绩和热情。
[0076]
本系统更新试题资源库的主要方法是利用网络爬虫抓取试题资源,并对试题资源进行加工、整理、分类,将其简单分为选择题、填空题、简答题三类试题,再由管理员存入源试题资源库模块中供用户选择使用,这其中,本系统只能通过管理员对各类试题添加标识后,后台对标识进行识别的方式,进行试题资源的分类,这就大大增加了管理员的工作量,降低了资源更新的效率。通过自然语言智能识别技术,对试题进行批量快速处理,减轻管理员负担,从而提高资源更新效率。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1