一种自动登录第三方系统获取页面截图的方法与流程

文档序号:26279951发布日期:2021-08-13 19:36阅读:321来源:国知局
一种自动登录第三方系统获取页面截图的方法与流程

【技术领域】

本发明涉及网页浏览技术领域,具体是一种自动登录第三方系统获取页面截图的方法。



背景技术:

随着科技社会的发展,网络大数据时代正逐渐改变着人们的生活,为了给人们提供更优质的服务,便于人们更直观地查看数据,一般需要根据网站地址自动获取该网站的快照截图以供大数据系统展示使用,但是目前通过第三方系统进行自动截图的时候,往往需要登录网页才能进行截图,否则只能截取到显示有登录界面的页面,因而每次需要截图的时候只能通过人工手动登录和手动截图,但是这样的截图效率较低,不利于大数据智能化发展。



技术实现要素:

本发明的目的在于提供一种自动登录第三方系统获取页面截图的方法,实现登录和截图自动化,提高截图效率。

为解决上述问题,本发明提供技术方案如下:

一种自动登录第三方系统获取页面截图的方法,包括如下步骤:

s1、获取所需登录并截图的网页地址;

s2、设置用于网页登录的相关参数,并由phantomjs工具生成对应的参数文件;

s3、向网页地址发起截图请求,并由phantomjs工具调取参数文件进行模拟登录;

s4、由phantomjs工具完成模拟登录后获取页面截图。

如上所述的自动登录第三方系统获取页面截图的方法,所述相关参数至少包括登录地址、用户名和登录密码。

如上所述的自动登录第三方系统获取页面截图的方法,在步骤s3中收到截图请求后,由phantomjs工具通过无界面浏览器打开网页地址,调取对应的参数文件中的相关参数进行模拟登录。

如上所述的自动登录第三方系统获取页面截图的方法,在步骤s3中模拟登录时,phantomjs工具通过javascript脚本方式调取对应的参数文件并填充相关参数后自动点击登录按键以完成登录。

如上所述的自动登录第三方系统获取页面截图的方法,所述步骤s4中获取页面截图后,保存页面截图至存储模块中,并返回页面截图的存储地址至前端页面,点击保存按键保存至数据库中。

如上所述的自动登录第三方系统获取页面截图的方法,所述步骤s3中的截图请求通过ajax发送。

如上所述的自动登录第三方系统获取页面截图的方法,步骤s2中用于网页登录的相关参数通过表单形式提交或通过弹出页面由用户填写提交。

与现有技术相比,本发明有以下优点:

本发明提供的自动登录第三方系统获取页面截图的方法,利用phantomjs工具生成对应的带有登录相关参数的参数文件并通过调用该参数文件进行模拟登录,登录成功后再自动获取截图,有效避免截图时截取到显示有登录界面的页面的情况发生,无需人工手动登录和手动截图,极大提高了截图效率,有利于大数据智能化发展。

【附图说明】

图1为本发明实施例的流程图。

图2为本发明实施例的设置页面示意图。

【具体实施方式】

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

请参阅附图1至附图2,本实施例提供一种自动登录第三方系统获取页面截图的方法,包括如下步骤:

s1、获取所需登录并截图的网页地址;

s2、设置用于网页登录的相关参数,并由phantomjs工具生成对应的参数文件;其中所述相关参数至少包括登录地址、用户名和登录密码;用于网页登录的所述的相关参数通过表单形式提交或通过弹出页面由用户填写提交。

s3、向网页地址发起截图请求,并由phantomjs工具调取参数文件进行模拟登录;其中,截图请求通过ajax发送;在程序收到截图请求后,由phantomjs工具通过无界面浏览器打开网页地址,调取对应的参数文件中的相关参数进行模拟登录。模拟登录时,phantomjs工具通过javascript脚本方式调取对应的参数文件并填充相关参数后自动点击登录按键以完成登录。

s4、由phantomjs工具完成模拟登录后获取页面截图;获取页面截图后,保存页面截图至存储模块中,并返回页面截图的存储地址至前端页面,点击保存按键保存至数据库中。

phantomjs工具是一个基于webkit的javascriptapi。它使用qtwebkit作为它核心浏览器的功能,使用webkit来编译解释执行javascript代码。它不仅是个隐形的浏览器,提供了诸如css选择器、支持web标准、dom操作、json、html5、canvas、svg等,同时也提供了处理文件i/o的操作,从而使你可以向操作系统读写文件等。本实施例利用phantomjs工具具有隐形浏览器这一属性,通过将登录地址、用户名和登录密码等相关参数嵌套并写到了浏览器中,使网站就不会跳转至登录页面,从而实现自动登录并实现快照截图。

本实施例中,如图1所示,具体流程如下:

1)用户点击设置按钮弹出如图2所示的设置页面,在设置页面中填写需要登录的网页地址,程序获取所需登录并截图的网页地址;

2)用户在设置页面填写相关参数,包括登录地址、用户名、登录密码、登录按钮设置等;并由phantomjs工具生成对应的参数文件,程序根据每个应用网站,按照该相关参数在phantomjs目录下生成与之对应的参数文件,本实施例中参数文件设为rasterize_temp_时间戳.js文件;

3)用户点击获取网站页面按钮发起截图请求,截图请求通过ajax发送到后端接口;后端接口接收到前端页面的请求后获取请求中的数据信息,由phantomjs工具通过无界面浏览器打开网页地址,程序调取对应的参数文件中的相关参数,执行”/bin/phantomjsrasterize_temp_时间戳.js文件”,并通过javascript脚本方式控制自动填充用户名、登录密码信息后并自动点击登录按钮,完成自动模拟登录;

4)模拟登录成功后phantomjs通过无界面浏览器进入应用网站后台首页,并通过无界面浏览器自带的截图功能截取当前页面,随后保存页面截图至存储模块如服务器中,并返回页面截图的存储地址至前端页面,点击保存按键保存至数据库中,点击保存按键保存至数据库中。

或者,可以通过表单提交形式对应用网站的网页地址、登录地址、用户名、登录密码、登录按钮等信息进行配置保存到数据采集系统数据库中,程序根据每个应用网站,从数据库中取出对应的网页地址、登录地址、用户名、登录密码、登录按钮等信息在phantomjs目录下生成对应的参数文件实现自动模拟登录及获取页面截图。

本发明提供的自动登录第三方系统获取页面截图的方法,利用phantomjs工具生成对应的带有登录相关参数的参数文件并通过调用该参数文件进行模拟登录,登录成功后再自动获取截图,有效避免截图时截取到显示有登录界面的页面的情况发生,无需人工手动登录和手动截图,极大提高了截图效率,有利于大数据智能化发展。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1