DOM在网页制作自动阅卷中的应用.doc

上传人:土8路 文档编号:10084631 上传时间:2021-04-18 格式:DOC 页数:11 大小:220.50KB
返回 下载 相关 举报
DOM在网页制作自动阅卷中的应用.doc_第1页
第1页 / 共11页
DOM在网页制作自动阅卷中的应用.doc_第2页
第2页 / 共11页
DOM在网页制作自动阅卷中的应用.doc_第3页
第3页 / 共11页
DOM在网页制作自动阅卷中的应用.doc_第4页
第4页 / 共11页
DOM在网页制作自动阅卷中的应用.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《DOM在网页制作自动阅卷中的应用.doc》由会员分享,可在线阅读,更多相关《DOM在网页制作自动阅卷中的应用.doc(11页珍藏版)》请在三一文库上搜索。

1、本科生毕业论文论文题目 DOM在网页制作自动阅卷中的应用作者姓名 专业名称 计算机科学与技术(师范) 班 级 指导教师 导师职称 摘 要本文从文档对象模型的角度对网页文档格式进行了研究,并在此基础上给出了基于文档对象获取的网页制作题自动阅卷方案,弥补了以往用文本匹配方式进行阅卷在知识点定位及取值过程中的不足。关键词:文档对象、自动阅卷、MSHTML对象模型、网页AbstractWe treated the hypertext document format in the DOM (Document Object Model) convention, and introduced a docum

2、ent object acquisition based automatic grading method for automatic examining based on web pages, overcome the defficiencies of the former text matching grading method during the processes of knowledge location and sampling.Keywords: document object , automatic examining, MSHTML Object Model,web pag

3、es目 录第1章引言1第2章网页文档对象研究22.1DOM22.2MSHTML组件及常用对象分析2第3章基于文档对象模型的网页制作自动阅卷的实现4第4章应用举例54.1题型设计及阅卷分析54.2编码实现5第5章结论7第6章参考文献8DOM在网页制作自动阅卷中的应用第1章 引言随着互联网的发展,网络已成为人们继电视、报纸等传统媒体之后获取信息的主要途径,而网页在其中又扮演了信息载体的主要角色,于是掌握网页制作的基本技术便成了新时代的必修课。相应的,网页制作技术的无纸化考查及自动化阅卷亦成为教育界一个不断探索的领域。本文就其中的自动阅卷技术进行探讨,并给出一个方便可行的解决方案。目前为止对网页基本

4、技术的考查以考生对静态网页进行编辑为主要方式,因此阅卷的过程其实是对考生生成的结果HTML文件进行检查的过程,看其是否符合标准答案,而HTML文件实质是一个半结构化的文本文件,所以早期的网页制作自动阅卷是纯文本处理,即以文本匹配的方式来进行答案验证。由于HTML语法结构的不严格及参与样式设置的Css的多样性使得阅卷定位及答案识别成了阅卷中的难点。文献汪彩梅,殷新春.FRONTPAGE自动阅卷系统及实现J.合肥学院学报,2007,17(1):6366提出了参数配置法,即对于每个阅卷点通过参数配置的形式给出在文档中的位置及属性。该方法虽然一定程度上解决了阅卷定位和答案识别问题,但是对于每一题都要进

5、行知识点属性和范围的设置不仅多出了人工配置的环节,而且为了落实知识点所在单元位置,要求相关人员必须清楚每个文档的细节,事实上由于学生操作的不可预测性,这点往往很难做到,因此该方法不能从根本上解决阅卷定位和答案识别问题。文献张世明,卢君,郑衍衡.Web页面的自动阅卷系统 J.上海大学学报,1999(5) :7378提出基于对象的比较方法,即首先对HTML文档进行预处理,将常用网页元素以对象的形式封装起来,阅卷时只需给定知识点对象,然后对其属性进行一一比较即可。此方法较文献1中少了人工干预,在答案比较的过程中数据结构也清晰明确,但由于知识点对象是在预处理时通过遍历HTML文档,根据HTML语言标志

6、分析得到,也同样存在文档分析和知识点准确定位的问题。通过考察Office系列中Word、Excel、PowerPoint等操作题的阅卷方式发现采用Office自带的文档对象模型识别文档中的元素不仅定位准确而且获取对象的属性值也相当容易。借鉴此法,我们发现HTML文档也存在类似的对象模型DOM,并且可以通过MSHTML组件来访问此模型中的对象,进而解析HTML文档中的元素。如此,只要了解DOM的基本结构及MSHTML组件中与HTML常用元素对应的对象即可通过对象访问技术来实现网页制作题的自动阅卷。第2章 网页文档对象研究2.1 DOMDOM (Document Object Model) 即文档

7、对象模型,,是针对HMTL和XML的基于树的应用程序接口(API)。它提供了一种结构化的文档表示方式,把网页中的元素抽象成一系列相互关联的对象,并以树型结构来反应网页中各对象的层级关系,开发人员便可通过该层次结构轻松地访问指定信息图 21所示即为一个简单HTML文档的对象树。documentheadhtmlbodytitletablephrfont图 21 文档对象模型2.2 MSHTML组件及常用对象分析MSHTML是微软公司在IE4.0时引入的主要用于HTML解析的一个COM组件,以DOM为核心思想,该组件将HTML语言中的所有标记元素封装成了相应的对象模型,通过该组件提供的标准接口,便可

8、直接操作对象本身及其相关的属性和方法。表 21列举了MSHTML在HTML文档对象访问上的一些常用对象及属性:表 21 MSHTML常用文档对象及属性对象对应HTML标记常用属性HTMLDocumentIHTMLBodyElementbgColor, backgroundIHTMLFontElemencolor,size,face,alignIHTMLHRElementColor, width, Align,SizeIHTMLImgElementsrc,align, width,height,IHTMLLinkElementhrefIHTMLMarqueeElementbgColor,loop

9、,directionIHTMLStyleColor,fontSize,fontFamilyIHTMLTablerows, background, bgColor,alignIHTMLTableCell,background, colSpan , bgColor ,borderColor,width,height, IHTMLTitleElementtext(1)其中HTMLDocument是HTML文档对象模型中的顶级对象,代表了一个HTML文档,可以通过该对象的createDocumentFromUrl方法来获得当前文档的HTMLDocument对象,通过getElementsByTagNa

10、me方法返回具有给定 HTML 标记名称(如 FONT 或 TABLE)的网页元素对象。(2)IHTMLBodyElement对应于HTML文档中body元素,可以用它来设置或读取网页页面属性,如网页背景颜色、背景图片、上下左右边距等。(3)IHTMLFontElement对应于HTML文档中的字体元素,可以通过该对象设置或获取字体属性,如文字的颜色、字号、字体等。(4)IHTMLHRElement对应于HTML文档中的水平线,据此可以设置或读取水平线的格式信息,如颜色、宽度、对齐方式等。(5)IHTMLImgElement对应于HTML文档中图片元素,可以用它来设置或读取图片属性,如图片的来

11、源、对齐方式、长宽比例等。(6)IHTMLLinkElement对应于HTML文档中的超级链接,可以通过该对象来设置或获取文档中超级链接相关属性,如链接目标地址等信息。(7)IHTMLMarqueeElement对应于HTML文档中的滚动字幕,可以通过它设置或返回滚动字幕属性,如背景颜色、循环资料、滚动方向等。(8)IHTMLStyle对应于HTML文档中的样式信息,据此可以设置和获取文档中相关元素的样式。(9)IHTMLTable和IHTMLTableCell分别对应于HTML文档中表格和单元格元素,结合使用IHTMLTableRow、IHTMLTableCol对象,可以设置和获取表格相关的

12、属性信息,如表格的长、宽、背景、边框样式、行列数,单元格合并情况等。(10)IHTMLTitleElement对应于HTML文档标题,通过它的text属性可以设置和获取网页标题。具体用法参见第4章。此外,IHTMLElement也是一个常用的集合对象,代表网页中指定标记的集合,通过这个集合对象也可以得到网页上特定标记的内容。IHTMLElement有4个主要属性:InnerText:开始标记和结束标记之间的文本; lnnerHTML:开始标记和结束标记之间的文本和HTML; OuterText:对象的文本; OuterHTML:对象的文本和HTML吕树进. 利用MSHTML组件从网页上提取数据

13、J.保定师范专科学校学报2004,17(4):1517。以上是MSHTML常用对象及属性,在实际应用过程中,需结合DOM树的层次结构遵循“由上往下逐层访问”的原则获取文档信息。例,获取某个单元格中文字颜色的信息,需经由文档表格单元格文字的层次关系获得目标属性。相关代码如下:Set htmlTable = htmlDoc.getElementsByTagName(table)For each objTable in htmlTalbeSet objCell=objTable.Rows(5).cells(0)Set htmlFont = objCell.All.tags(font)For each

14、 objFont in htmlFontcolorInfo= objFont.colorNextNext第3章 基于文档对象模型的网页制作自动阅卷的实现利用HTML文档模型中的常用对象及属性便可通过对象访问技术来实现网页制作题的自动阅卷。下面以VB为例说明阅卷过程:(1)创建一个VB工程。(2)在“引用”对话框中选中“Microsoft HTML Object L ibrary”,引用MSHTML组件。(3)声明变量对象,并用createDocumentFromUrl方法获取顶层文档对象。此过程类似于Word阅卷中引用ord应用程序并打开具体的文档。相关代码如下:Dim objMSHTML A

15、s New MSHTML.HTMLDocumentDim htmlDoc As MSHTML.HTMLDocumentSet htmlDoc = objMSHTML.createDocumentFromUrl(“d:expindex.html”, vbNullString)由于HTMLDocument对象在获取过程中需要一定的时间,在此之前访问html文档中的其他元素会因为顶层HTMLDocument对象未完整获取而导致访问失败,所以保证HTMLDocument对象完整获取是十分必要的,可以利用HTMLDocument对象提供的readyState方法来检测当前文档载入情况并控制后续操作。相关

16、代码如下:While htmlDoc.readyState complete DoEventsWend(4)网页文本、对象及属性的获取从表现形式上看,一个网页主要包含三方面的信息,一种为文档格式化信息,他们从属于特定的页面元素对象,可以通过对应对象的属性来获取。如文字颜色,可通过文字对象的color属性得到。一种为网页中呈现给用户的文本信息,即HTML起止标签之间的一段文字信息,如“你好”中的“你好”,此类信息不专属于某个页面元素,而是存在于html文件的文档、表格、段落等多种页面元素中,可以通过其所在元素的text或innerText属性得到。再一种是以对象形式出现的媒体信息,如图片、音频、

17、视频等,这类信息既属于有特定含义的对象又不同于文本元素,如要获取元素本身,可通过对象自身的src属性得到。(5)阅卷评分。根据上述获得的页面信息与标准答案进行比较,给分。(6)阅卷完成后通过文档close方法关闭文档,同时释放对象。第4章 应用举例4.1 题型设计及阅卷分析网页制作题主要考察用户对网页基本元素编辑能力,因此试题应包含文本、表格、超链接等常用网页元素的编辑及网页标题、背景等页面全局属性的设置。如要求对webedit站点中的index.htm文件进行如下编辑:编辑后结果如图 41。图 41编辑后的网页页面(1) 合并1所在表格的单元格,并在该单元格输入文字“自我介绍”,然后将文字的

18、字体设为“隶书”,大小设为5(18磅),去除表格边框及标识“1”(2)为 “我的博文”四个字设置超链接,链接地址为webedit文件夹下的myblog.htm文件;(3)将网页标题设为“个人主页”。此例中第(1)题考查表格操作和文本设置,涉及的知识点有合并单元格、输入文字、设置文本的字体、字号等。可以通过获取单元格对象IHTMLTableCell及其下属文字对象的相关属性(参见第3章(4)网页文本、对象及属性的获取)判断操作正确性。第(2)题考查超级链接的制作,这部分可通过检验超级链接对象及目标地址的正确性来完成。第(3)题以网页标题为代表检查网页属性的设置,可通过IHTMLTitleElem

19、ent对象的text属性来获得网页标题进行批阅。4.2 编码实现上述试题主要阅卷代码如下:Dim objMSHTML As New MSHTML.HTMLDocumentDim htmlDoc As MSHTML.HTMLDocumentSet htmlDoc = objMSHTML.createDocumentFromUrl(strAnswerFile, vbNullString) 获取HTMLDocument对象While htmlDoc.readyState complete DoEventsWendSet htmlTable = htmlDoc.getElementsByTagName

20、(table) 获取表格对象集合 For Each objTable In htmlTable Set objCell = objTable.Rows(0).Cells(0) 获取单元格对象 If objCell.colSpan=2 then 通过单元格的colSpan属性判断合并单元格操作是否正确 nScore=nScore+5 End if If objCell.innerText=”自我介绍” then 判断单元格内容是否正确 nScore=nScore+5End if If objFont.face=” 隶书” then 判断字体 nScore=nScore+5 End ifNext

21、If StrComp(objLink.innerText, 我的博文, vbTextCompare) = 0 Then 判断超链对象 nScore=nScore+2.5 End If If InStr(1, objLink, myblog.htm, vbTextCompare) 0 Then 判断超链目标地址 nScore=nScore+2.5 End If If objTitle.Text=”个人主页” then 判断网页标题nScore=nScore+5End ifhtmlDoc.CloseSet htmlDoc = NothingobjMSHTML.CloseSet objMSHTML = Nothing第5章 结论基于文档对象模型的阅卷方法具有较好的文档分析能力,充分解决了网页制作题阅卷过程中阅卷点定位难,关键信息提取难的问题,从而大大提高了阅卷准确性。又由于该方法具有和MSOffice中Word、Excel、Powerpoint等应用程序类似的文档模型和良好的编程接口,有利于开发开放式的阅卷系统,并和现有MSOffice开放式阅卷系统张量,詹国华.开放式、智能化计算机考核阅卷系统的设计与实现J. 计算机工程与应用,2001,37(10) :108110自然融合。第6章 参考文献

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1