掌桥专利:专业的专利平台
掌桥专利
首页

一种网站验证方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 18:46:07


一种网站验证方法、装置、电子设备及存储介质

技术领域

本公开涉及互联网技术领域,具体而言,涉及一种网站验证方法、装置、电子设备及存储介质。

背景技术

随着互联网技术的发展,网站(Website)已经成为人们从互联网上获取信息的主要工具,因此,网站质量的好坏,直接关系到用户的体验。

目前,在发布网站页面之前,往往需要对网站页面进行验证。相关技术中提供了一种人工登录验证方法,该方法需要手动打开浏览器,依次输入用户名、密码等信息,部分网站页面还需要选择对应的证书才能登录,步骤较为繁琐,且页面跳转时间较长。

发明内容

本公开实施例至少提供一种网站验证方法、装置、电子设备及存储介质,操作简单,显著提升网站验证的效率。

第一方面,本公开实施例提供了一种网站验证方法,包括:

获取待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文;

基于所述登录请求报文及所述URL向服务器发起登录验证请求,确定所述登录验证请求返回的应答结果;

基于所述应答结果确定针对待验证网站的网站验证结果。

在一种可能的实施方式中,所述基于所述登录请求报文及所述URL向服务器发起登录验证请求,包括:

基于所述URL向服务器发起跳转地址请求,确定所述跳转地址请求返回的登录跳转地址;

按照所述登录跳转地址将所述登录请求报文发送至所述服务器,确定所述登录验证请求返回的应答结果。

在一种可能的实施方式中,所述按照所述登录跳转地址将所述登录请求报文发送至所述服务器,包括:

对所述登录跳转地址进行格式化处理,得到处理后的登录跳转地址;

按照所述处理后的登录跳转地址将所述登录请求报文发送至所述服务器

在一种可能的实施方式中,所述确定所述跳转地址请求返回的登录跳转地址,包括:

基于所述URL向服务器发起跳转地址请求,确定所述跳转地址请求指向的当前跳转地址是否为预先设置的白名单地址;

若确定是预先设置的白名单地址,则将所述跳转地址请求指向的当前跳转地址确定为所述登录跳转地址。

在一种可能的实施方式中,所述方法还包括:

若确定不是预先设置的白名单地址,则将所述跳转地址请求指向的当前跳转地址转换为白名单地址,并将在所述当前跳转地址产生的记录信息传递至所述白名单地址;

将传递有记录信息的白名单地址确定为所述登录跳转地址。

在一种可能的实施方式中,按照如下步骤生成登录请求报文:

获取用户登录信息及用户数字证书;

将所述用户数字证书转换为验证字符串;

基于所述用户登录信息及所述验证字符串生成所述登录请求报文。

在一种可能的实施方式中,在所述应答结果包括应答码的情况下,所述基于所述应答结果确定针对待验证网站的网站验证结果,包括:

基于所述应答码判断所述待验证网站的页面是否正常显示;

若能够正常显示,则对所述待验证网站的页面进行页面解析,并基于解析结果确定网站验证结果;

若不能够正常显示,则返回网站验证失败结果。

在一种可能的实施方式中,所述对所述待验证网站的页面进行页面解析,包括:

基于机器学习方式对所述待验证网站的页面进行页面解析。

在一种可能的实施方式中,所述基于机器学习方式对所述待验证网站的页面进行页面解析,包括:

获取预训练的文本识别模型;

基于所述文本识别模型对所述待验证网站的页面进行页面解析;

所述基于解析结果确定网站验证结果,包括:

在所述解析结果指示存在部分或全部文本缺失的情况下,确定网站验证失败结果;或者,

在所述解析结果指示全部文本识别成功的情况下,确定网站验证成功结果。

在一种可能的实施方式中,在所述基于解析结果确定网站验证结果之前,还包括:

对解析结果进行过滤,得到过滤后的解析结果。

在一种可能的实施方式中,在待验证网站为多个的情况下,所述获取待验证网站的统一资源定位符URL,包括:

基于多线程并发方式分别获取多个待验证网站的统一资源定位符URL。

第二方面,本公开还提供了一种网站验证装置,包括:

获取模块,用于获取待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文;

请求模块,用于基于所述登录请求报文及所述URL向服务器发起登录验证请求,确定所述登录验证请求返回的应答结果;

验证模块,用于基于所述应答结果确定针对待验证网站的网站验证结果。

第三方面,本公开还提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面及其各种实施方式中任一项所述的网站验证方法。

第四方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面及其各种实施方式中任一项所述的网站验证方法。

采用上述网站验证方法、装置、电子设备及存储介质,在获取到待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文的情况下,可以基于登录请求报文及URL向服务器发起登录验证请求,确定登录验证请求返回的应答结果以根据应答结果确定网站验证结果。本公开中的应答结果很大程度上可以反映待验证网站的运行情况,在待验证网站可正常运行的情况下,能够很好的进行应答,反之,在待验证网站异常运行的情况下,不能进行很好的应答,基于此,能够快速、方便地实现网站的自动化验证。

本公开的其他优点将配合以下的说明和附图进行更详细的解说。

应当理解,上述说明仅是本公开技术方案的概述,以便能够更清楚地了解本公开的技术手段,从而可依照说明书的内容予以实施。为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举例说明本公开的具体实施方式。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。而且在整个附图中,用相同的标号表示相同的部件。在附图中:

图1示出了本公开实施例所提供的一种网站验证方法的流程图;

图2示出了本公开实施例所提供的一种网站验证方法的应用流程图;

图3示出了本公开实施例所提供的一种网站验证装置的示意图;

图4示出了本公开实施例所提供的一种电子设备的示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

在本公开实施方式的描述中,应理解,诸如“包括”或“具有”等术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不旨在排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在的可能性。

除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个这一特征。在本公开实施方式的描述中,除非另有说明,“多个”的含义是两个或两个以上。

经研究发现目前,在发布网站页面之前,往往需要对网站页面进行验证。相关技术中提供了一种人工登录验证方法,该方法需要手动打开浏览器,依次输入用户名、密码等信息,部分网站页面还需要选择对应的证书才能登录,步骤较为繁琐,且页面跳转时间较长。

为了解决上述问题,相关技术中提出了一些改进方案。其一,调用浏览器模拟用户点击实现网站登录,在该方案下,调用本机已安装的浏览器,打开指定的统一资源定位符(Uniform Resource Locator,URL),控制鼠标移动,点击用户名、密码等文本框并输入相应内容后,点击登录按钮实现登录。如《一种网络爬虫自动化获取网页信息方法、装置及系统》(CN201911330026.1)中使用预先配置的工具自动启动浏览器并进入目标网页登录页面,模拟键盘输入账号和密码,最终完成模拟登录。其二,调用无用户界面(User Interface,UI)浏览器实现网站模拟登录。在该方案中,调用程序内置的无UI浏览器,请求指定的URL,对登录页面进行解析提取出用户名、密码等文本框所在位置,填入相应内容后,模拟点击登录按钮实现登录。如《一种自动登录第三方系统获取页面截图的方法》(CN202110444785.1)中使用了PhantomJS,通过该工具调取参数文件进行模拟登录,登录成功后自动获取截图进行页面检查。其三,模拟爬虫方式登录。在该方案中,将用户名、密码等输入项作为参数,构造POST请求登录页面。如《一种基于用户认证信息的网络爬虫方法》(CN202010596286.X)中使用Python语言的Requests库模拟用户登录网站并获取登录后的相关信息。

然而,上述第一种方案依赖于第三方软件或第三方库,代码维护成本较高,且执行稳定性(特别是并发执行时)不够。第二种方案不能模拟不同(或特定)浏览器的行为,同时较为消耗内存。第三种方案能够实现较为简单的登录请求,对于复杂的登录请求则需要进一步的定制,且对于页面是否登录成功的判断较为简单。

为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个,本公开提供了至少一种网站验证方案,该方案基于HTTP请求进行WEB网站登录验证,还可以通过脚本携带HTTP请求实现WEB网站的自动登录和页面检查,能够快速、方便地实现WEB网站的自动化测试和验证,在短时间内验证大量WEB网站是否正常。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种网站验证方法进行详细介绍,本公开实施例所提供的网站验证方法的执行主体一般为具有一定计算能力的电子设备,该电子设备例如包括:客户端或其它处理设备,客户端可以为用户设备(UserEquipment,UE)、移动设备、用户终端、个人数字助理(Personal Digital Assistant,PDA)等。在一些可能的实现方式中,该网站验证方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

参见图1所示,为本公开实施例提供的网站验证方法的流程图,所述方法包括步骤S101~S103,其中:

S101:获取待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文;

S102:基于登录请求报文及URL向服务器发起登录验证请求,确定登录验证请求返回的应答结果;

S103:基于应答结果确定针对待验证网站的网站验证结果。

为了便于理解本公开实施例提供的网站验证方法,接下来首先对该方法的应用场景进行具体说明。本公开实施例中的网站验证方法主要可以针对WEB页面进行登录验证,无论是在内网发布还是在外网发布均适用,例如,针对企业内部的各类管理平台发布的页面进行验证,再如,针对对外发布的互联网平台上的页面进行验证,对此不做具体限制。这主要是考虑到在针对上述各种应用场景进行登录操作的流畅度将直接影响用户体验度,因而,在进行网页发布之前,进行登录验证是非常重要的一环。

这里,首先需要获取待验证网站的URL以及基于用户登录信息生成的登录请求报文,继而基于上述两个信息发起登录验证请求。不管待验证网站是否能够正常登录均可以通过应答结果进行确定,从而得到网站验证结果。

这里的URL可以是提前收集的需要登录的WEB门户网站。在实际应用中,可以通过获取多个URL,以对多个WEB门户网站进行登录验证,此处采用多线程并发执行,降低执行耗时。

有关登录请求报文可以是基于用户登录信息组装得到的,这里的用户登录信息可以是包含用户名、密码等在内的信息,还可以是其它登录信息,例如,手机号码等。将各个用户登录信息按照报文方式进行组装,即可得到登录请求报文。基于这一登录请求报文可以向服务器发起登录验证请求。

在本公开实施例中,登录请求报文中除了可以组装有用户登录信息,还可以组装有其他信息,例如,在需要进行证书验证的情况下,可以获取用户数字证书,并将该用户数字证书转换为验证字符串,该验证字符串联合用户登录信息即可组装成具有证书验证特性的登录请求报文,从而可以解决一些待验证网站强制校验用户证书导致普通工具无法登录的问题。

其中,上述用户数字证书是指在互联网通讯中标志通讯各方身份信息的一个数字认证,可以在网上用它来识别对方的身份。具体而言,由认证机构数字签名的包含公开密钥拥有者信息、公开密钥、签发者信息、有效期以及一些扩展信息的数字文件。

本公开实施例中,基于登录请求报文及URL向服务器发起登录验证请求,该请求返回的应答结果可以确定为针对待验证网站的网站验证结果。

在实际应用中,服务器返回的应答结果可以指示的是基于登录请求报文能否正常访问URL及其登录跳转地址,能否正常访问的情况下,可以确认网站验证成功的结果,从而执行后续网站发布等操作,反之,可以确认网站验证失败的结果,从而需要进行网站适配的调整,并重新对调整后的网站进行验证。

这里,在发起登录验证请求之前,需要基于URL向服务器发起跳转地址请求,而后按照该请求返回的登录跳转地址将登录请求报文发送至服务器,从而确定登录验证请求返回的应答结果。

可知的是,在进行登录验证请求,客户端与服务器需要进行一次交互,且在本次交互中,服务器需要基于记录信息将URL所对应的登录跳转地址返回至客户端以便客户端发起后续的登录验证请求。

这里,为了进一步确保登录验证的安全性,预先配置有白名单地址。又考虑到实际的生产环境中配置了多个单点登录(SingleSignOn,SSO)地址,而在服务器响应跳转地址请求的情况下,多个SSO地址均有可能被跳转到,基于此,可以先确定跳转地址请求指向的当前跳转地址是否为预先设置的白名单地址,并在确定是预先设置的白名单地址的情况下,将跳转地址请求指向的当前跳转地址确定为登录跳转地址。

而在确定不是预先设置的白名单地址的情况下,需要统一转换为白名单地址并将在当前跳转地址产生的记录(cookie)信息传递到白名单地址,避免登录信息失效。对于传递有cookie信息的白名单而言,在下一次进行登录验证时,可以顺利登录。

这里的登录跳转地址可以是经过格式化处理后的地址,以更好的支持后续的登录验证。在实际应用中,首先采用由urllib、socket等基础库进行封装得到Connection、ParseBase等组件,而后基于这些组件进行格式标准化处理,生成标准格式的SSO跳转地址。

本公开实施例中的应答结果可以包括应答码,基于应答码判断待验证网站的页面是否正常显示;若能够正常显示,则对待验证网站的页面进行页面解析,并基于解析结果确定网站验证结果;若不能够正常显示,则返回网站验证失败结果。

这里,基于应答码可以初步判断网站页面是否正常显示,如验证不通过,则直接返回网站验证失败结果;如验证通过,则对网页内容进行进一步解析,判断页面功能是否正常运行。

本公开实施例提供的网站验证方法可以基于机器学习方式对待验证网站的页面进行页面解析,具体可以通过如下步骤来实现:

步骤一、获取预训练的文本识别模型;

步骤二、基于文本识别模型对待验证网站的页面进行页面解析;

步骤三、在解析结果指示存在部分或全部文本缺失的情况下,确定网站验证失败结果;或者,在解析结果指示全部文本识别成功的情况下,确定网站验证成功结果。

考虑到页面本身是由很多文本组合得到的,在能够解析出全部文本的情况下,说明页面功能良好,反之,在解析不出文本或仅解析出部分文本的情况下,说明页面功能存在一定的缺陷,此时,可以进行针对性的提醒。

可知的是,本公开实施例提供的网站验证方法不仅可以对网页的基础显示功能进行验证,还能够进行更为深度的验证,从而具有广泛的实用性。

需要说明的是,在实际应用中,不仅可以基于文本识别模型进行文本识别,还可以结合图像识别或者网页验证中所需的识别方式进行验证,这里不做具体的限制,可以结合不同的网站进行针对性的设置。

这里,为了避免解析结果中的冗余信息所可能带来的不良影响,在确定网站验证结果之前,还可以对解析结果进行过滤,比如,可以对应答结果中的超文本标记语言(HyperText Markup Language,HTML)标签、标题等无效内容过滤掉。

为了进一步理解本公开实施例提供的网站验证方法,接下来可以结合图2进行应用性说明。

1.首先,获得标准化后的数据(包括登录URL、HTTP请求头等);

2.其次,以GET方式获取登录URL跳转到的单点登录地址;

3.判断能否获取单点登录的跳转地址SSO_IP;

4.若不能获取,则表明网站未正常运行,直接结束;

5.若能获取,则接着判断该SSO_IP是否配置免验证码的白名单;

6.若没有配置,则对SSO地址进行替换(替换为已配置白名单的SSO_IP),并返回到第2步重新以GET方式获取登录地址;

7.若已经配置,则接着判断请求的WEB页面是否需要证书登录;

8.若需要证书,则生成数字证书字符串(该字符串代表用户使用数字证书登录);若不需要证书则跳过该步;

9.组装POST参数生成登录请求;

10.提交登录请求,获取返回的页面内容。

可知的是,本公开实施例中提供的网站验证方法主要具有如下特性:

1.验证码绕过

在SSO系统中配置用户名及源IP白名单,使用指定用户名、通过特定IP访问WEB网站,则可不对验证码的正确性进行校验,避免因验证码识别错误而增加登录失败的概率。

2.登录请求中携带数字证书信息

某些网站强制要求使用数字证书登录,本公开实施例通过解析用户的数字证书,得到一串加密后的字符串,将其带入POST登录请求的sec字段中,即可通过使用数字证书的方式登录WEB网站。

3.菜单遍历验证

不同的WEB网站包含的菜单功能并不一致,且同一网站的菜单也存在增删改的情况。本公开实施例不仅验证WEB网站是否能正常访问,还会通过正则表达式将网站当前包含的所有菜单的URL识别出来,并依次遍历访问,以进行可用性及功能(按钮)验证,最终将结果汇总。

通过使用本公开实施例提供的网站验证方法,可以有如下的优点:

1.无需借助第三方专业软件,代码维护成本低且可移植性高。

考虑到第三方专业软件代码对外不可见,使用过程中出现问题需要请开发方排查修复,沟通成本较高且耗时较长。此外,该软件可能无法适配所有WEB验证的场景,需要对软件进行升级,或者寻找其他软件实现新场景的验证,产生额外的人力成本。反观本申请,无需借助第三方软件,基于常规的HTTP请求的方式即可快速实现WEB网站登录验证,且可移植性高。

2.节约人力成本,减少测试验证时的工作量。

相关技术中针对特定WEB页面的常规验证流程包括登录和检查两大步骤,其一是登录:打开浏览器,输入网页URL,跳转到登录页面,输入用户名、密码等信息,点击登录,跳转到登录有页面;其二是检查:确认所有菜单能正常显示,点击各菜单链接、按钮进行查询、搜索等操作,确认展示结果符合预期。

由于本公开实施例不使用UI界面,在登录步骤中所耗费的时间要少于通过浏览器进行跳转所花费的时间,与此同时,在登录成功后可获取页面的所有信息,能够并发模拟所有按钮的功能并获取返回结果进行分析,所花的时间远少于人工点击按钮并判断结果的流程。

3.提升执行速度,同时执行的稳定性较高。

本公开实施例可同时针对不同的WEB页面进行验证,且对于单个WEB页面的所有功能的检查可以并发执行,显著高于人工检查的并发度。同时,与前端交互相比较,纯后台的报文交互需要传输的数据更少,出错的概率更低。此外,这里的重试机制也保证了在网络波动、偶发异常等情况下可以快速重新进行验证。

在实际应用了本公开实施例提供的网站验证方法后的效果如下:

1.节约了90%的人力成本。原先将一个WEB网站的所有页面均检查一遍需要花费30分钟以上,使用本方案后仅需要点击开始,并在执行完成后确认检查结果即可。

2.执行速度提升10倍以上。人工检查单个菜单页面需要花费30-60秒,本方案仅需要3秒钟即可完成单个菜单页面的检查。

3.稳定性提升40%。本方案绕过了验证码的限制,支持并发执行检查,后台消耗资源较少,且有重试机制,与其他方案相比稳定性更高。

在本说明书的描述中,参考术语“一些可能的实施方式”、“一些实施方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施方式或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施方式或示例以及不同实施方式或示例的特征进行结合和组合。

关于本公开实施方式的方法流程图,将某些操作描述为以一定顺序执行的不同的步骤。这样的流程图属于说明性的而非限制性的。可以将在本文中所描述的某些步骤分组在一起并且在单个操作中执行、可以将某些步骤分割成多个子步骤、并且可以以不同于在本文中所示出的顺序来执行某些步骤。可以由任何电路结构和/或有形机制(例如,由在计算机设备上运行的软件、硬件(例如,处理器或芯片实现的逻辑功能)等、和/或其任何组合)以任何方式来实现在流程图中所示出的各个步骤。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一发明构思,本公开实施例中还提供了与网站验证方法对应的网站验证装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述网站验证方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图3所示,为本公开实施例提供的一种网站验证装置的示意图,装置包括:获取模块301、请求模块302、验证模块303;其中,

获取模块301,用于获取待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文;

请求模块302,用于基于登录请求报文及URL向服务器发起登录验证请求,确定登录验证请求返回的应答结果;

验证模块303,用于基于应答结果确定针对待验证网站的网站验证结果。

采用上述网站验证装置,在获取到待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文的情况下,可以基于登录请求报文及URL向服务器发起登录验证请求,确定登录验证请求返回的应答结果以根据应答结果确定网站验证结果。本公开中的应答结果很大程度上可以反映待验证网站的运行情况,在待验证网站可正常运行的情况下,能够很好的进行应答,反之,在待验证网站异常运行的情况下,不能进行很好的应答,基于此,能够快速、方便地实现网站的自动化验证。

在一种可能的实施方式中,请求模块302,用于按照如下步骤基于登录请求报文及URL向服务器发起登录验证请求:

基于URL向服务器发起跳转地址请求,确定跳转地址请求返回的登录跳转地址;

按照登录跳转地址将登录请求报文发送至服务器,确定登录验证请求返回的应答结果。

在一种可能的实施方式中,请求模块302,用于按照如下步骤按照登录跳转地址将登录请求报文发送至服务器:

对登录跳转地址进行格式化处理,得到处理后的登录跳转地址;

按照处理后的登录跳转地址将登录请求报文发送至服务器

在一种可能的实施方式中,请求模块302,用于按照如下步骤确定跳转地址请求返回的登录跳转地址:

基于URL向服务器发起跳转地址请求,确定跳转地址请求指向的当前跳转地址是否为预先设置的白名单地址;

若确定是预先设置的白名单地址,则将跳转地址请求指向的当前跳转地址确定为登录跳转地址。

在一种可能的实施方式中,请求模块302,还用于:

若确定不是预先设置的白名单地址,则将跳转地址请求指向的当前跳转地址转换为白名单地址,并将在当前跳转地址产生的记录信息传递至白名单地址;

将传递有记录信息的白名单地址确定为登录跳转地址。

在一种可能的实施方式中,获取模块301,用于按照如下步骤生成登录请求报文:

获取用户登录信息及用户数字证书;

将用户数字证书转换为验证字符串;

基于用户登录信息及验证字符串生成登录请求报文。

在一种可能的实施方式中,在应答结果包括应答码的情况下,验证模块303,用于按照如下步骤基于应答结果确定针对待验证网站的网站验证结果:

基于应答码判断待验证网站的页面是否正常显示;

若能够正常显示,则对待验证网站的页面进行页面解析,并基于解析结果确定网站验证结果;

若不能够正常显示,则返回网站验证失败结果。

在一种可能的实施方式中,验证模块303,用于按照如下步骤对待验证网站的页面进行页面解析:

基于机器学习方式对待验证网站的页面进行页面解析。

在一种可能的实施方式中,验证模块303,用于按照如下步骤基于解析结果确定网站验证结果:

获取预训练的文本识别模型;

基于文本识别模型对待验证网站的页面进行页面解析;

在解析结果指示存在部分或全部文本缺失的情况下,确定网站验证失败结果;或者,

在解析结果指示全部文本识别成功的情况下,确定网站验证成功结果。

在一种可能的实施方式中,验证模块303,还用于:

在基于解析结果确定网站验证结果之前,对解析结果进行过滤,得到过滤后的解析结果。

在一种可能的实施方式中,在待验证网站为多个的情况下,获取模块301,用于按照如下步骤获取待验证网站的统一资源定位符URL:

基于多线程并发方式分别获取多个待验证网站的统一资源定位符URL。

需要说明的是,本公开实施方式中的装置可以实现前述方法的实施方式的各个过程,并达到相同的效果和功能,这里不再赘述。

本公开实施例还提供了一种电子设备,如图4所示,为本公开实施例提供的电子设备结构示意图,包括:处理器401、存储器402、和总线403。存储器402存储有处理器401可执行的机器可读指令(比如,图3中的装置中获取模块301、请求模块302、验证模块303对应的执行指令等),当电子设备运行时,处理器401与存储器402之间通过总线403通信,机器可读指令被处理器401执行时执行如下处理:

获取待验证网站的统一资源定位符URL及基于用户登录信息生成的登录请求报文;

基于登录请求报文及URL向服务器发起登录验证请求,确定登录验证请求返回的应答结果;

基于应答结果确定针对待验证网站的网站验证结果。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的网站验证方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的网站验证方法的步骤,具体可参见上述方法实施例,在此不再赘述。

其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。

本公开中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,对于装置、设备和计算机可读存储介质实施方式而言,由于其基本相似于方法实施方式,所以其描述进行了简化,相关之处可参见方法实施方式的部分说明即可。

本公开实施方式提供的装置、设备和计算机可读存储介质与方法是一一对应的,因此,装置、设备和计算机可读存储介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述装置、设备和计算机可读存储介质的有益技术效果。

本领域内的技术人员应明白,本公开的实施方式可提供为方法、装置(设备或系统)、或计算机可读存储介质。因此,本公开可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机可读存储介质的形式。

本公开是参照根据本公开实施方式的方法、装置(设备或系统)、和计算机可读存储介质的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

技术分类

06120115686278