The application embodiment provides an automatic filling method and device for a web page form. Firstly, the mapping between form elements and business data is established; secondly, the DOM tree of Web pages is parsed to get the position of form elements on the screen; finally, according to the mapping relationship between form elements and business data, the mouse events and keyboard events are simulated to assign business data to the corresponding form elements. This application provides a technical solution, through the personification of the input form, without the need to master and modify the source code of the web page form to achieve automatic filling, to avoid modifying the source code of the web page and introduce new vulnerabilities, so it will not affect the stability of the web page. In addition, the technical proposal provided in this application does not rely on the JavaScript script engine embedded in the web pages to run, does not increase the burden of web browsers, operating efficiency will not be limited by browser performance, therefore, compared with the existing technology, automatic filling out forms is more efficient.
【技术实现步骤摘要】
一种网页表单自动填写方法及装置
本申请涉及计算机
,尤其涉及一种网页表单自动填写方法及装置。
技术介绍
网页表单是互联网网页中的一个重要元素,用于收集用户的输入。在大量的电子信息录入的应用场景中(如电子报税、电子户籍登记、电子表格录入等),网页表单记录用户输入的信息,并在用户请求提交表单时,将用户输入的信息提交给服务器,实现表单数据的交互和存储。在需要大量填写表单的应用场景中,为了减少人工填写表单的工作量以提高表单填写速度,现有技术提供了一些基于互联网网页DOM(DocumentObjectModel:文档对象化模型)树解析的自动化表单填写方法,这种方法基于现有技术的JavaScript脚本填写表单的方式,在掌握网页原有的HTML和JavaScript脚本代码的基础上,根据掌握的代码开发一套自动填写表单的JavaScript脚本代码,以实现对网页表单的自动填写。但是,现有技术中由于是在网页的源代码中加入了新的用于自动填写表单的JavaScript脚本代码,实际上通过改变网页源代码的方式给网页加入了新的功能,这种改变容易在网页源代码中引入新的漏洞,从而影响网页运行的稳定性。此外,由于JavaScript脚本代码是基于浏览器内嵌的JavaScript脚本引擎运行,其运行效率也受到限制。
技术实现思路
本申请实施例提供了一种网页表单自动填写方法及装置,以解决现有技术中的网页表单自动填写方法影响网页稳定性且运行效率受限的问题。第一方面,根据本申请实施例,提供了一种网页表单自动填写方法,包括:建立表单元素与业务数据的映射;解析网页的DOM树,以获取表单元素在屏幕中 ...
【技术保护点】
1.一种网页表单自动填写方法,其特征在于,包括:建立表单元素与业务数据的映射;解析网页的DOM树,以获取表单元素在屏幕中的位置;根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。
【技术特征摘要】
1.一种网页表单自动填写方法,其特征在于,包括:建立表单元素与业务数据的映射;解析网页的DOM树,以获取表单元素在屏幕中的位置;根据表单元素与业务数据的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素。2.根据权利要求1所述的方法,其特征在于,所述建立业务数据与表单元素的映射的步骤,包括:解析网页的DOM树,以获取表单元素的标识符;根据表单元素的标识符设置每个表单元素与每个业务数据的一一对应关系;通过业务层接口建立业务数据与表单元素的映射;其中,所述业务层接口用于对表单元素赋值时,将业务数据的数值提供给对应的表单元素。3.根据权利要求1所述的方法,其特征在于,所述解析网页的DOM树,以获取表单元素在屏幕中的位置的步骤,包括:获取在屏幕内显示的网页区域;从DOM树的根元素节点开始,逐层遍历网页的DOM树,以获取屏幕内的表单元素;获取从根元素到表单元素之间的每一层网页元素相对于父级元素的位置偏移量;将各层网页元素相对于父级元素的位置偏移量求和,以获取表单元素相对屏幕原点的绝对偏移量;根据所述绝对偏移量和表单元素的尺寸信息,获取表单元素在屏幕中的位置。4.根据权利要求1所述的方法,其特征在于,所述根据业务数据与表单元素的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素的步骤,包括:当表单元素为第一类表单元素时,模拟鼠标移动事件,将鼠标焦点移动至与业务数据对应的所述第一类表单元素所在位置;模拟鼠标点击事件,选中与业务数据对应的所述第一类表单元素;其中,所述第一类表单元素至少包括网页表单的单选框、复选框、列表框和提交按钮。5.根据权利要求1所述的方法,其特征在于,所述根据业务数据与表单元素的映射关系,模拟鼠标事件和键盘事件,将业务数据赋值给对应的表单元素的步骤,包括:当表单元素为第二类表单元素时,模拟鼠标移动事件,将鼠标焦点移动至所述第二类表单元素所在位置;在所述第二类表单元...
【专利技术属性】
技术研发人员:赵志强,于剑池,张中辉,李琨,
申请(专利权)人:北京神州泰岳软件股份有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。