具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请实施例提供了一种网页表单自动填写方法。图1是本申请实施例提供的一种网页表单自动填写方法的流程图。该方法可以应用于PC(个人电脑)、平板电脑、手机和服务器等具备网页功能的电子设备中。
参见图1所示,该方法可以包括以下步骤:
步骤S110,建立表单元素与业务数据的映射。
网页表单是互联网网页中的一个重要元素,用于收集用户的输入。在大量的电子信息录入的应用场景中(如电子报税、电子户籍登记、电子表格录入等),网页表单记录用户输入的信息,并在用户请求提交表单时,将用户输入的信息提交给服务器,实现表单数据的交互和存储。
网页表单中包含多种表单元素,例如:<form>元素,用于定义网页中的一个表单;<input>元素,用于定义表单输入的不同类型,例如输入框<input type="text">、单选框<input type="radio">、提交按钮<input type="submit">等;以及,在HTML5中新加入的e-mail地址输入框<input type="email">、数值输入框<input type="number">等。在本领域技术人员开发包含表单的网页时,会编写用于输入每一项业务数据的表单元素。
示例地,下面一个提供给纳税人填写纳税人名称的包含<input>元素的表单:
其中,type="text"表示该表单是一个常规文本的输入框,name="Taxpayer"是本领域技术人员对该表单元素中输入内容的命名,表单元素中输入的内容要想被正确提交,必须要设置该表单元素的name属性。本申请中,name属性可以与数据库中的字段名称相同或对应设置,从而,实现提交表单后,根据name属性与数据库字段名称的对应关系将业务数据存储有序在数据库中。
通常,网页表单中每个表单元素的name属性都不同,以避免将不同的业务数据以相同的name属性提交,造成数据提交错误。基于这一特点,name属性可以作为表单元素的标识符,通过该标识符可建立起每个表单元素与每个业务数据的一一对应关系,从而建立起表单元素与业务数据的映射关系。
步骤S120,解析网页的DOM树,以获取表单元素在屏幕中的位置。
DOM(Document Object Model),是文档对象化模型的简称。DOM树是指通过DOM将HTML页面进行解析,并生成的HTML树状结构和对应的访问方法。
图2示例性地示出了DOM树的典型结构。
如图2所示,DOM树是一个由多层节点形成的树状结构。其中,整个HTML文档作为一个文档节点,每个HTML元素作为元素节点(例如根元素节点、<body>元素节点等),HTML元素内的文本作为文本节点,每个HTML属性作为属性节点。
本申请实施例中,基本思路是通过解析网页的DOM树,获取网页中的表单元素,如form元素节点;然后,获取表单元素的输入框、单选框、复选框和按钮等在屏幕中的显示位置。示例地,如图3所示,可将屏幕的左上角作为坐标原点,以屏幕的宽度和高度作为坐标系的两个坐标轴,建立屏幕的像素坐标系,用表单元素中输入框、单选框等元素的左上角相对于坐标原点的坐标值来表示表单元素在屏幕中的位置;或者,参见图4所示,用表单元素中输入框、单选框等元素在屏幕中所占区域的坐标范围来表示表单元素在屏幕中的位置,例如,图4中输入框的位置是由四个坐标点围成的矩形区域。
步骤S130,根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。
本申请中,基本思路是根据表单元素与业务数据的映射关系,通过模拟人工录入表单时产生的鼠标的滑动、点击等操作,以及键盘的键入、删除等操作,将业务数据赋值给对应的表单元素。
具体地,对于单选框、复选框、列表框和提交框等,可模拟鼠标滑动,将鼠标指针移动到与业务数据对应的选项上,然后模拟鼠标点击以选择对应的选项。对于输入框,可模拟鼠标滑动,将鼠标指针滑动到输入框上;然后,模拟鼠标点击,激活输入框到待输入状态;最后,模拟键盘键入操作,将业务数据键入到输入框中,或者,模拟键盘删除操作,将输入框中原有的字符删除。
由以上技术方案可知,本申请实施例提供了一种网页表单自动填写方法。首先,建立表单元素与业务数据的映射;然后,解析网页的DOM树,以获取表单元素在屏幕中的位置;最后,根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。本申请提供的技术方案,通过拟人化录入表单的方式,在无需掌握和修改网页源代码的情况下实现网页表单的自动填写,避免由于修改网页源代码而引入新的漏洞,因此不会影响网页运行的稳定性。此外,本申请提供的技术方案,不依赖网页内嵌的JavaScript脚本引擎运行,不会增加网页浏览器的负担,运行效率不会受到浏览器性能的限制,因此,与现有技术相比,自动填写表单的效率更高。
图5是本申请实施例提供的一种网页表单自动填写方法步骤S110的流程图。
如图5所示,在一种可选择的实施方式中,步骤S110可以包括以下步骤:
步骤S111,解析网页的DOM树,以获取表单元素的标识符。
具体地,可通过浏览器的DOM explorer组件解析DOM树,以获取网页中的所有表单元素,并进一步获取表单元素的标识符。例如,可将表单元素的name属性作为表单元素的标识符。
步骤S112,根据表单元素的标识符设置每个表单元素与每个业务数据的一一对应关系。
示例地,将表单元素的name属性作为表单元素的标识符,从而,通过name属性建立起每个表单元素与每个业务数据的一一对应关系。如下表所示:
表单元素 |
标识符 |
---------------> |
业务数据 |
Text输入框 |
Taxpayer |
---------------> |
纳税人 |
Radio单选框 |
Year |
---------------> |
纳税年份 |
步骤S113,通过业务层接口建立业务数据与表单元素的映射。
业务层接口一端连接不同来源的业务数据,另一端与连接自动填写表单的设备建立数据连接,从而,建立起从业务数据到网页表单之间的数据联系,并根据每个表单元素与每个业务数据的一一对应关系建立起业务数据与表单元素的映射。
图6是本申请实施例提供的一种网页表单自动填写方法步骤S120的流程图。
如图6所示,在一种可选择的实施方式中,步骤S120可以包括以下步骤:
步骤S121,获取在屏幕内显示的网页区域。
本申请中,使用了模拟鼠标事件和键盘事件的方式填写表单,而鼠标事件和键盘事件作用于屏幕的显示区域内,因此,本申请在步骤S121中,首先要获取在屏幕内显示的网页区域。
步骤S122,从DOM树的根元素节点开始,逐层遍历网页的DOM树,以获取屏幕内的表单元素。
具体地,从DOM树上层的根元素节点开始,逐层对DOM树进行遍历解析。在解析过程中,会从DOM树的根元素节点开始,向DOM树的下层节点解析,从而依次解析到网页的根元素、<body>元素、<div>元素等,并最终解析到表单元素<form>中的输入框、单选框等。然后,分析解析到的表单元素是否在屏幕显示的网页区域内,如果在网页区域内,则该表单元素就是步骤S122中要获取的表单元素。
步骤S123,获取从根元素到表单元素之间的每一层网页元素相对于父级元素的位置偏移量。
具体地,首先获取根元素到屏幕左上角的位置偏移量,然后获取<body>元素相对于根元素的偏移量,然后获取<body>元素的下一层网页元素(如位于<body>元素下一层的<div>元素)的偏移量,然后进一步沿DOM树逐层获取其他网页元素的相对于其父级元素的位置偏移量,直到获取到表单元素相对于其父级元素的位置偏移量。
本申请实施例中的位置偏移量,可以包括网页元素相对于父级元素的横向偏移量x和纵向偏移量y(如果是根元素,可将屏幕左上角视为其父级元素的位置),因此,网页元素相对于其父级元素的位置偏移量可以用位置坐标(x,y)的形式表达。此外,需要补充说明的是,除了可将屏幕左上角视为根元素的父级元素的位置以外,屏幕的右上角、左下角、右下角或屏幕中心等均可以作为根元素的父级元素的位置,并以这个位置为原点建立屏幕坐标系,进而基于屏幕坐标系,通过位置坐标(x,y)的形式表达位置偏移量。
下面示例性地介绍了本申请实施例步骤S123的一种实施方式:
图7是本申请实施例提供的一种网页表单自动填写方法步骤S123的流程图。
如图7所示,在一种可选择的实施方式中,步骤S123可以包括以下步骤:
步骤S1231,以屏幕左上角为坐标原点,获取根元素的左上角定位点相对于所述坐标原点的偏移坐标值,以所述偏移坐标值表示所述位置偏移量。
具体地,以屏幕左上角为坐标原点,建立屏幕坐标系。即:定义从坐标原点开始,向右为X轴方向,向下为Y轴方向,以及根据屏幕像素的行数和列数设定屏幕坐标系的刻度,即:如果屏幕分辨率为1920×1080,那么屏幕坐标系的刻度范围就是X:0~1920、Y:0~1080。
然后,获取根元素的左上角定位点相对于所述坐标原点的偏移坐标值,以偏移坐标值表示位置偏移量。
图8是本申请实施例示例性示出的网页元素在显示屏中位置的示意图。
参见图8所示,该网页从根元素到表单元素<form>的输入框<input>共包含5层网页元素,即:
根元素<html>---<body>元素---<div>元素---表单元素<form>---输入框<input>
在步骤S1231中,首先获取根元素<html>的左上角定位点相对于所述坐标原点的偏移坐标值(x1,y1),该偏移坐标值也是根元素<html>的左上角定位点在屏幕坐标系中的绝对坐标值。
步骤S1232,从根元素的下一层网页元素开始,以每一层网页元素的父级元素左上角定位点为坐标原点,逐层获取网页元素左上角定位点相对于父级元素的偏移坐标值,以所述偏移坐标值表示所述位置偏移量。
示例地,首先获取<body>元素的左上角定位点相对于根元素<html>左上角定位点的偏移坐标值(x2,y2),然后获取<div>元素的左上角定位点相对于<body>元素左上角定位点的偏移坐标值(x3,y3),然后获取表单元素<form>的左上角定位点相对于<div>元素左上角定位点的偏移坐标值(x4,y4),最后获取输入框<input>的左上角定位点相对于表单元素<form>左上角定位点的偏移坐标值(x5,y5)。
下面示例性地介绍了本申请实施例步骤S123的另一种实施方式:
图9是本申请实施例提供的另一种网页表单自动填写方法步骤S123的流程图。
如图9所示,在一种可选择的实施方式中,步骤S123可以包括以下步骤:
步骤S1233,以屏幕左上角为坐标原点,获取根元素的中心定位点相对于所述坐标原点的偏移坐标值,以所述偏移坐标值表示所述位置偏移量。
具体地,以屏幕左上角为坐标原点,建立屏幕坐标系。即:定义从坐标原点开始,向右为X轴方向,向下为Y轴方向;并且,根据屏幕像素的行数和列数设定屏幕坐标系的刻度,即:如果屏幕分辨率为1920×1080,那么屏幕坐标系的刻度范围就是X:0~1920、Y:0~1080。
然后,获取根元素的中心定位点相对于所述坐标原点的偏移坐标值,以偏移坐标值表示位置偏移量。
图10是本申请实施例示例性示出的网页元素在显示屏中位置的示意图。
参见图10所示,该网页从根元素到表单元素<form>的输入框<input>共包含5层网页元素,即:
根元素<html>---<body>元素---<div>元素---表单元素<form>---输入框<input>
在步骤S1233中,首先获取根元素<html>的中心定位点相对于所述坐标原点的偏移坐标值(x1’,y1’),该偏移坐标值也是根元素<html>的中心定位点在屏幕坐标系中的绝对坐标值。
步骤S1234,从根元素的下一层网页元素开始,以每一层网页元素的父级元素中心定位点为坐标原点,逐层获取网页元素中心定位点相对于父级元素的偏移坐标值,以所述偏移坐标值表示所述位置偏移量。
示例地,首先获取<body>元素的中心定位点相对于根元素<html>中心定位点的偏移坐标值(x2’,y2’),然后获取<div>元素的中心定位点相对于<body>元素中心定位点的偏移坐标值(x3’,y3’),然后获取表单元素<form>的中心定位点相对于<div>元素中心定位点的偏移坐标值(x4’,y4’),最后获取输入框<input>的中心定位点相对于表单元素<form>中心定位点的偏移坐标值(x5’,y5’)。
步骤S124,将各层网页元素相对于父级元素的位置偏移量求和,以获取表单元素相对屏幕原点的绝对偏移量。
本申请中,除根元素以外,每层网页元素相对于其父级元素的位置偏移量都是一个位置增量,其表示的是网页元素与其父级元素的相对位置。因此,如果将从根元素开始直到表单元素的所有位置偏移量相加求和,就能够得到表单元素相对于坐标原点的绝对偏移量。
示例地,可将各层网页元素的左上角定位点相对于其父级元素左上角定位点的偏移坐标值(x1,y1)~(xn,yn)进行数值求和,生成表单元素左上角定位点相对于屏幕坐标原点的绝对坐标值,以该绝对坐标值表示所述绝对偏移量。例如:
从根元素<html>到输入框<input>的偏移坐标值分别为:(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)。那么,将x1~x5数值求和,以及,将y1~y5数值求和,得到输入框<input>左上角定位点相对于屏幕坐标原点的绝对坐标值(x,y)。其中:
x=x1+x2+x3+x4+x5
y=y1+y2+y3+y4+y5
示例地,还可将各层网页元素的中心定位点相对于其父级元素中心定位点的偏移坐标值(x1’,y1’)~(xn’,yn’)进行数值求和,生成表单元素中心定位点相对于屏幕坐标原点的绝对坐标值,以该绝对坐标值表示所述绝对偏移量。例如:
从根元素<html>到输入框<input>的偏移坐标值分别为:(x1’,y1’)、(x2’,y2’)、(x3’,y3’)、(x4’,y4’)、(x5’,y5’)。那么,将x1’~x5’数值求和,以及,将y1’~y5’数值求和,得到输入框<input>中心定位点相对于屏幕坐标原点的绝对坐标值(x’,y’)。其中:
x’=x1’+x2’+x3’+x4’+x5’
y’=y1’+y2’+y3’+y4’+y5’
步骤S125,根据所述绝对偏移量和表单元素的尺寸信息,获取表单元素在屏幕中的位置。
表单元素在屏幕中的位置通常是一个矩形区域,相应地,表单元素的尺寸信息就是这个矩形区域的长度w和宽度h。一个矩形区域包含左上角、右上角、左下角、右下角四个顶点,如果确定了这四个顶点在屏幕中的位置,表单元素在屏幕中的位置就随之确定。
示例地,确定上述四个顶点位置,可以通过以下方式实现:
第一种方式,如果以表单元素左上角定位点相对于屏幕坐标原点的绝对坐标值(x,y)表示绝对偏移量,那么,以矩形区域的四个顶点确定的表单元素在屏幕中的位置为:左上角(x,y)、右上角(x+w,y)、左下角(x,y+h)、右下角(x+w,y+h)。
第二种方式,如果以表单元素中心定位点相对于屏幕坐标原点的绝对坐标值(x’,y’)表示绝对偏移量,那么,以矩形区域的四个顶点确定的表单元素在屏幕中的位置为:左上角(x’-w/2,y’-h/2)、右上角(x’+w/2,y’-h/2)、左下角(x’-w/2,y’+h/2)、右下角(x’+w/2,y’+h/2)。
此外,还可以仅使用矩形的左上角坐标和右下角坐标表示表单元素在屏幕中的位置。示例地:
第三种方式,如果以表单元素左上角定位点相对于屏幕坐标原点的绝对坐标值(x,y)表示绝对偏移量,那么,表单元素在屏幕中的位置可表示为:左上角(x,y),右下角(x+w,y+h)。
第四种方式,如果以表单元素中心定位点相对于屏幕坐标原点的绝对坐标值(x’,y’)表示绝对偏移量,那么,表单元素在屏幕中的位置可表示为:左上角(x’-w/2,y’-h/2),右下角(x’+w/2,y’+h/2)。
本申请实施例在步骤S125中,获取表单元素在屏幕中的位置,从而,在模拟鼠标时间和键盘时间填写表单的过程中,就可以根据已知的表单元素在屏幕中的位置,将鼠标指针移动到表单元素所在的屏幕区域,并通过模拟点击鼠标的方式选择单选框或复选框中的对应选项,以及,通过模拟点击鼠标的方式激活输入框的活动状态,并进一步通过模拟键盘键入、删除操作的方式将业务数据键入到输入框中或将输入框中原有的字符删除。
图11是本申请实施例提供的一种网页表单自动填写方法步骤S130的流程图。
参见图11所示,在一种可选择的实施方式中,步骤S130可以包括以下步骤:
步骤S131,当表单元素为第一类表单元素时,模拟鼠标移动事件,将鼠标焦点移动至与业务数据对应的所述第一类表单元素所在位置。
本申请实施例中,第一类表单元素包括网页表单的单选框、复选框、列表框和提交按钮等。第一类表单元素的填写过程仅需通过鼠标的移动和点击事件就可以实现,而不需要键盘操作。
示例地,将业务员数据中的纳税人性别填写进表单,其中,纳税人为男性。与该业务数据关联的是两个单选框<input type="radio">,分别对应选项male和famale。那么,可根据步骤S120中获取表单元素在屏幕中的位置,模拟鼠标移动事件,将鼠标指针的焦点移动到选项male的所在位置。进一步参见图12,是本申请实施例示例性示出的步骤S131的操作示意图,具体地:
如图12-a所示,如果以表单元素左上角定位点相对于屏幕坐标原点的绝对坐标值(x,y)表示绝对偏移量,那么,获取选项male所在矩形区域四个顶点的坐标:(x,y)、(x+w,y)、(x,y+h)、(x+w,y+h);然后,模拟移动鼠标事件,将鼠标指针的焦点移动到单选框所在的矩形区域内的(xm,ym)位置,其中,x<xm<x+w、y<ym<y+h。作为优选地,可将鼠标指针的焦点移动到矩形区域的中心位置,即(x+w/2,y+h/2)位置。
如图12-b所示,如果以表单元素中心定位点相对于屏幕坐标原点的绝对坐标值(x’,y’)表示绝对偏移量,那么,获取选项male所在矩形区域四个顶点的坐标:(x’-w/2,y’-h/2)、(x’+w/2,y’-h/2)、(x’-w/2,y’+h/2)、(x’+w/2,y’+h/2);然后,模拟移动鼠标事件,将鼠标指针的焦点移动到单选框所在的矩形区域内的(xm,ym)位置,其中,x’-w/2<xm<x’+w/2、y’-h/2<ym<y’+h/2。或者,直接将鼠标指针的焦点移动到表单元素中心定位点(x’,y’)位置。
步骤S132,模拟鼠标点击事件,选中与业务数据对应的所述第一类表单元素。
通过模拟鼠标点击事件,可以选中鼠标指针所在位置的第一类表单元素。示例地,如果在选项male所在区域内的(xm,ym)位置模拟点击鼠标事件,表单中的选项male的<input>属性中将会被添加checked字段,表示选项male被选中,在提交表单时,纳税人的性别“male”将会被提交。
图13是本申请实施例提供的一种网页表单自动填写方法步骤S130的流程图。
参见图13所示,在一种可选择的实施方式中,步骤S130可以包括以下步骤:
步骤S135,当表单元素为第二类表单元素时,模拟鼠标移动事件,将鼠标焦点移动至所述第二类表单元素所在位置。
本申请实施例中,第二类表单元素至少包括网页表单的输入框。第二类表单元素在填写业务数据时,需要通过键盘操作来实现。
示例地,将业务数据中的纳税人编号填写进表单。与该业务数据关联的是一个输入框<input type="text">。那么,可根据步骤S120中获取的表单元素在屏幕中的位置,模拟鼠标移动事件,将鼠标移动到输入框所在位置。
步骤S136,在所述第二类表单元素的所在位置模拟鼠标点击事件,使所述第二类表单元进入待输入状态。
具体地,在输入框的所在位置模拟鼠标左键的单击,使输入框被选中而进入带有闪烁光标的待输入状态。
步骤S137,根据所述第二类表单元素与业务数据的映射关系,模拟键盘输入事件,以在所述第二类表单元素中输入或删除业务数据。
具体地,在模拟键盘输入事件之前可先检测操作系统的输入状态,例如:中文输入状态或英文输入状态、中文字符的半角输入状态或全角输入状态、以及英文字符的大写状态或小写状态等;然后,模拟键盘输入事件以设置正确的输入状态;最后,模拟键盘输入事件在输入框中输入业务数据。
在一种可选择的实施方式中,本申请实施例提供的一种网页表单自动填写方法还可以包括以下步骤:
步骤S210,监测网页状态是否发生改变;
步骤S220,如果发生改变,重新解析网页的DOM树,以获取网页状态改变后表单元素在屏幕中的位置。
其中,网页状态至少包括浏览器窗口大小、浏览器窗口在屏幕中的位置,浏览器侧边滚动条的位置。
受人为操作等外部因素的影响,网页状态可能会在一个不确定的时刻发生变化,导致网页元素在屏幕中的位置发生变化。此时,如果依然按照在先解析网页DOM树获取的表单元素在屏幕中的位置去模拟鼠标事件和键盘事件填写表单,就会出现错误。为了能够在网页状态发生变化时,及时获取到表单元素在屏幕中的最新位置,可实时检测网页的状态,并在网页状态发生改变时,重新解析网页的DOM树,以获取网页状态改变后表单元素在屏幕中的位置。
在一种可选择的实施方式中,本申请实施例提供的一种网页表单自动填写方法还可以包括:设置模拟鼠标事件和键盘事件的触发延时T。
所述触发延时用于在完成一次模拟鼠标事或键盘事件后,等待一个延时时间T,再触发下一次模拟鼠标事或键盘事件。
由于本申请实施例提供的技术方案是通过模拟鼠标事件和键盘事件的方式自动填写表单,因此,考虑到系统性能对模拟鼠标事件和键盘事件的影响,本申请设置模拟鼠标事件和键盘事件的触发延时T,实现在完成一次模拟鼠标事件或键盘事件后,等待一个延时时间T,再触发下一次模拟鼠标事件或键盘事件,从而避免在本申请实施例提供的技术方案应用于性能较差的系统环境中时,由于模拟鼠标事件或键盘事件的执行效率过高而导致系统无法及时响应的问题,保证系统运行的稳定性。
由以上技术方案可知,本申请实施例提供了一种网页表单自动填写方法。首先,建立表单元素与业务数据的映射;然后,解析网页的DOM树,以获取表单元素在屏幕中的位置;最后,根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。本申请提供的技术方案,通过拟人化录入表单的方式,在无需掌握和修改网页源代码的情况下实现网页表单的自动填写,避免由于修改网页源代码而引入新的漏洞,因此不会影响网页运行的稳定性。此外,本申请提供的技术方案,不依赖网页内嵌的JavaScript脚本引擎运行,不会增加网页浏览器的负担,运行效率不会受到浏览器性能的限制,因此,与现有技术相比,自动填写表单的效率更高。
本申请实施例还提供了一种网页表单自动填写装置。图14是本申请实施例提供的一种网页表单自动填写装置的示意图。该装置可以应用于PC(个人电脑)、平板电脑、手机和服务器等具备网页功能的电子设备中,可用于执行本申请的方法实施例,本申请装置实施例中未披露的细节,请参照本申请的方法实施例。
参见图14,该装置包括:
数据关联模块310,用于建立表单元素与业务数据的映射;
网页解析模块320,用于解析网页的DOM树,以获取表单元素在屏幕中的位置;
表单填写模块330,用于根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。
由以上技术方案可知,本申请实施例提供了一种网页表单自动填写装置。首先,建立表单元素与业务数据的映射;然后,解析网页的DOM树,以获取表单元素在屏幕中的位置;最后,根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。本申请提供的技术方案,通过拟人化录入表单的方式,在无需掌握和修改网页源代码的情况下实现网页表单的自动填写,避免由于修改网页源代码而引入新的漏洞,因此不会影响网页运行的稳定性。此外,本申请提供的技术方案,不依赖网页内嵌的JavaScript脚本引擎运行,不会增加网页浏览器的负担,运行效率不会受到浏览器性能的限制,因此,与现有技术相比,自动填写表单的效率更高。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。