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

图片验证码识别方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 18:37:28


图片验证码识别方法、装置、电子设备及存储介质

技术领域

本发明涉及验证码识别技术领域,尤其涉及一种图片验证码识别方法、装置、电子设备及存储介质。

背景技术

目前,各网站基本都使用了验证码识别技术,该验证码识别技术可以有效地阻止计算机直接进入网站系统,为用户的信息安全提供了强大的保障。

现有技术中,对图片验证码的识别是通过将图片发送给第三方接码平台,并接收第三方接码平台返回的识别结果。然而,这种方法在图片验证码传输过程中,与第三方接码平台的交互通信会大大影响图片验证码识别的不确定性,增加了图片验证码识别结果的响应时间,不具备如今图片验证码识别需要的及时响应特性。

因此,如何解决图片验证码识别的响应延时问题,仍然是亟待解决的问题。

发明内容

本发明提供一种图片验证码识别方法、装置、电子设备及存储介质,用以解决现有技术中传统的图片验证码识别的响应时延,以及图片验证码识别的准确率较低的缺陷。

本发明提供一种图片验证码识别方法,包括:

获取待验证的图片路径,以及所述图片路径的验证失败次数;

基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别;

基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果;

基于所述识别结果进行验证,得到所述识别结果的验证结果;

在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

根据本发明提供的一种图片验证码识别方法,所述基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,包括:

在所述验证失败次数小于等于第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为本地识别;

在所述验证失败次数大于所述第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为云端识别。

根据本发明提供的一种图片验证码识别方法,所述在所述验证失败次数小于等于第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为本地识别,包括:

在所述验证失败次数小于等于第二失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为基础本地识别;

在所述验证失败次数大于所述第二失败阈值且小于等于所述第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为预处理本地识别。

根据本发明提供的一种图片验证码识别方法,所述预处理本地识别的识别步骤,包括:

获取图片验证码;

对所述图片验证码进行去噪处理,并基于去噪处理所得的图片验证码进行本地识别。

根据本发明提供的一种图片验证码识别方法,所述图片验证码的获取步骤,包括:

基于所述图片路径,对原始图片验证码进行截图,得到所述图片验证码。

根据本发明提供的一种图片验证码识别方法,所述基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,包括:

获取网络参数;

在所述网络参数不满足预设条件的情况下,基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式;

在所述网络参数满足预设条件的情况下,确定所述目标识别方式为云端识别。

根据本发明提供的一种图片验证码识别方法,所述在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,包括:

在所述验证结果为验证失败且所述验证失败次数大于第三失败阈值的情况下,生成验证失败提示信息;

在所述验证结果为验证失败且所述验证失败次数小于等于所述第三失败阈值的情况下,更新所述图片路径的验证失败次数。

本发明还提供一种图片验证码识别装置,包括:

获取单元,用于获取待验证的图片路径,以及所述图片路径的验证失败次数;

确定识别方式单元,用于基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别;

识别单元,用于基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果;

验证单元,用于基于所述识别结果进行验证,得到所述识别结果的验证结果;

更新单元,用于在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述图片验证码识别方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述图片验证码识别方法。

本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述图片验证码识别方法。

本发明提供的图片验证码识别方法、装置、电子设备及存储介质,基于验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式,候选识别方式包括本地识别和云端识别,由此,基于目标识别方式,对图片验证码进行识别,得到识别结果,即图片验证码识别可以在本地完成,而无需上传云端进行识别,因此,图片验证码识别的过程不存在与第三方接码平台的信息传输耗时,大大降低了图片验证码识别的耗时,提高了识别响应的及时性。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的图片验证码识别方法的流程示意图;

图2是本发明提供的图片验证码识别方法中步骤120的流程示意图之一;

图3是本发明提供的图片验证码识别方法中步骤121的流程示意图;

图4是本发明提供的图片验证码识别方法中步骤120的流程示意图之二;

图5是本发明提供的图片验证码识别方法中步骤150的流程示意图;

图6是本发明提供的图片验证码识别装置的结构示意图;

图7是本发明提供的电子设备的结构示意图。

具体实施方式

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

本发明的说明书和权利要求书中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”、“第三”等所区分的对象通常为一类。

相关技术中,对图片验证码的识别是通过将图片发送给第三方接码平台,并接收第三方接码平台返回的识别结果。

然而,这种方法在图片验证码传输过程中,与第三方接码平台的交互通信会大大影响图片验证码识别的不确定性,增加了图片验证码识别结果的响应时间,不具备如今图片验证码识别需要的及时响应特性。

其次,选择不同的第三方接码平台,对图片验证码识别成功率的影响也不同,增加了图片验证码识别成功率的不确定性。

针对上述问题,本发明提供一种图片验证码识别方法,图1是本发明提供的图片验证码识别方法的流程示意图,如图1所示,该方法包括:

步骤110,获取待验证的图片路径,以及所述图片路径的验证失败次数。

具体地,可以获取待验证的图片路径,以及图片路径的验证失败次数,此处的待验证的图片路径是指待验证的图片验证码的图片路径,图片路径可以是待验证的图片验证码的XPath路径,此处的XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。

此处的待验证的图片验证码可以是网页页面中的待验证的图片验证码。可以理解的是,待验证的图片路径可以反映图片路径所对应的图片验证码的位置信息,即,可以依据获取到的待验证的图片路径,在网页页面中查找到图片路径所对应的图片验证码。

此处的图片路径的验证失败次数是指对图片路径所对应的图片验证码进行验证的验证失败次数,此处的验证失败次数可以是1次、2次、3次等,本发明实施例对此不作具体限定。

步骤120,基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别。

具体地,在获取到待验证的图片路径,以及图片路径的验证失败次数后,可以基于验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式。此处的候选识别方式是指后续可能用于对图片路径所对应图片验证码进行识别的识别方式,候选识别方式可以包括本地识别和云端识别。

此处的本地识别是指使用本地的算力对图片路径所对应图片验证码进行识别,本地识别可以包括基础本地识别和预处理本地识别。此处的云端识别是指使用云端的算力对图片路径所对应图片验证码进行识别,此处的云端可以是云码平台,也可以是超级鹰平台,还可以是优优云平台等,本发明实施例对此不作具体限定。

相应地,目标识别方式是指最终用于对图片路径所对应图片验证码进行识别的识别方式,目标识别方式可以是本地识别,也可以是云端识别,本发明实施例对此不作具体限定。

可以理解的是,验证失败次数反映了图片路径所对应图片验证码的识别难度,验证失败次数越低,越偏向于将目标识别方式确定为本地识别;验证失败次数越高,越偏向于将目标识别方式确定为云端识别。

例如,当验证失败次数较少时,例如1次、2次、3次时,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式可以是本地识别;当验证失败次数较多时,例如4次及4次以上时,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式可以是云端识别。

此外,在确定目标识别方式时,可以参考网络参数,例如网络参数较优时,可以确定目标识别方式为云端识别,网络参数一般或者较差,可以基于验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式。

步骤130,基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果。

具体地,在确定目标识别方式后,可以基于目标识别方式,对图片验证码进行识别,得到识别结果。此处,当目标识别方式为本地识别时,可以应用OCR(Optical CharacterRecognition,光学字符识别)技术对图片验证码进行识别,也可以对图片验证码进行预处理后再进行识别。当目标识别方式为云端识别时,可以将图片验证码发送至云码平台进行识别,也可以将图片验证码发送至超级鹰平台进行识别,还可以将图片验证码发送至优优云平台进行识别等,本发明实施例对此不作具体限定。

此处的识别结果是指从图片验证码中识别得到的验证码,识别结果可以是数字和字母组成的字符串,例如,识别结果可以是“3SFD”,也可以是“YE5L”,还可以是“U8ZW”等,本发明实施例对此不作具体限定。

步骤140,基于所述识别结果进行验证,得到所述识别结果的验证结果。

具体地,在得到识别结果后,可以基于识别结果进行验证,得到识别结果的验证结果。例如,可以应用Selenium将识别结果输入至获取到的待验证的图片路径中,进行验证,得到识别结果的验证结果。

此处的识别结果的验证结果可以是验证失败,也可以是验证成功。

步骤150,在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

具体地,在得到验证结果后,可以在验证结果为验证失败的情况下,更新图片路径的验证失败次数,并基于更新后的验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式,再基于目标识别方式,对图片验证码进行识别,得到识别结果。最后,可以基于识别结果进行验证,得到识别结果的验证结果。在验证结果为验证成功的情况下,退出循环;否则,在验证结果为验证失败的情况下,继续上述步骤,此处不再赘述。

本发明实施例提供的方法,基于验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式,而候选识别方式包括本地识别和云端识别,由此,基于目标识别方式,对图片验证码进行识别,得到识别结果,即图片验证码识别可以在本地完成,而无需上传云端进行识别,因此,图片验证码识别的过程不存在与第三方接码平台的信息传输耗时,大大降低了图片验证码识别的耗时,提高了识别响应的及时性。

基于上述实施例,图2是本发明提供的图片验证码识别方法中步骤120的流程示意图之一,如图2所示,步骤120包括:

步骤121,在所述验证失败次数小于等于第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为本地识别;

步骤122,在所述验证失败次数大于所述第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为云端识别。

具体地,验证失败次数反映了图片路径所对应图片验证码的识别难度,验证失败次数越低,越偏向于将目标识别方式确定为本地识别;验证失败次数越高,越偏向于将目标识别方式确定为云端识别。

考虑到本地识别可以降低网络传输的耗时,可以在验证失败次数小于等于第一失败阈值的情况下,从候选识别方式中确定目标识别方式为本地识别,此处的本地识别可以包括基础本地识别和预处理本地识别。此处的第一失败阈值可以是预先设置的,也可以根据实际情况进行更改,例如,第一失败阈值可以是3,也可以是4,还可以是5等,本发明实施例对此不作具体限定。

考虑到云端识别的识别精度更高,识别效果更好,可以在验证失败次数大于第一失败阈值的情况下,从候选识别方式中确定目标识别方式为云端识别。

本发明实施例提供的方法,针对不同的验证失败次数,确定不同的目标识别方式,从而为图片验证码识别匹配最适宜的识别方式,以提高图片验证码识别的效率。

基于上述实施例,图3是本发明提供的图片验证码识别方法中步骤121的流程示意图,如图3所示,步骤121包括:

步骤1211,在所述验证失败次数小于等于第二失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为基础本地识别;

步骤1212,在所述验证失败次数大于所述第二失败阈值且小于等于所述第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为预处理本地识别。

具体地,可以在验证失败次数小于等于第二失败阈值的情况下,从候选识别方式中确定目标识别方式为基础本地识别。此处的第二失败阈值可以是预先设置的,也可以根据实际情况进行更改,例如,第二失败阈值可以是2,也可以是1等,本发明实施例对此不作具体限定。

此处的基础本地识别是指应用本地OCR技术对图片验证码进行识别,例如,可以应用Pytesseract对图片验证码进行识别,也可以应用 Easyocr对图片验证码进行识别,本发明实施例对此不作具体限定。

可以在验证失败次数大于第二失败阈值且小于等于第一失败阈值的情况下,从候选识别方式中确定目标识别方式为预处理本地识别。此处的第二失败阈值小于第一失败阈值。此处的预处理本地识别是指先对图片验证码进行预处理后,再应用本地OCR技术进行识别。

本发明实施例提供的方法,针对不同的验证失败次数,确定不同的目标识别方式,从而为图片验证码识别匹配最适宜的本地识别方式,以提高图片验证码识别的效率。

基于上述实施例,所述预处理本地识别的识别步骤,包括:

获取图片验证码;

对所述图片验证码进行去噪处理,并基于去噪处理所得的图片验证码进行本地识别。

具体地,考虑到图片验证码可能存在加干扰线、字符粘连、字符扭曲等情况,增加了识别的难度。可以先获取图片验证码,再对图片验证码进行去噪处理,并基于去噪处理所得的图片验证码进行本地识别,此处对图片验证码进行去噪处理可以是应用ImageEnhance对图片验证码进行二值化降噪。

可以理解的是,对图片验证码进行去噪处理后,可以去除掉图片验证码中的噪点、干扰线等,提高了后续识别的准确性。

本发明实施例提供的方法,对图片验证码进行去噪处理,并基于去噪处理所得的图片验证码进行本地识别,由此,针对图片验证码可能存在加干扰线、字符粘连、字符扭曲等情况,也能对图片验证码进行识别,提高了识别的准确性和可靠性。

基于上述实施例,所述图片验证码的获取步骤,包括:

基于所述图片路径,对原始图片验证码进行截图,得到所述图片验证码。

具体地,可以基于图片路径,对原始图片验证码进行截图,此处对原始图片验证码进行截图可以使用Selenium对原始图片验证码进行截图,此处的原始图片验证码是指图片路径所对应的网页页面中的图片验证码。

在对原始图片验证码进行截图后,可以得到图片验证码。

本发明实施例提供的方法,基于图片路径,对原始图片验证码进行截图,得到图片验证码,由此,可以为后续图片验证码识别提供便利条件。

基于上述实施例,图4是本发明提供的图片验证码识别方法中步骤120的流程示意图之二,如图4所示,步骤120包括:

步骤410,获取网络参数;

步骤420,在所述网络参数不满足预设条件的情况下,基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式;

步骤430,在所述网络参数满足预设条件的情况下,确定所述目标识别方式为云端识别。

具体地,在确定目标识别方式时,可以参考网络参数,可以先获取网络参数,此处的网络参数可以通过响应时间、网络抖动、丢包率等参数表示,反映了当前网络的网络质量。

在网络参数不满足预设条件的情况下,即当前网络的网络质量较差,可以基于验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式。此处的预设条件是指衡量网络质量所设置的条件,可以是响应时间预设参数,也可以是网络抖动预设参数,还可以是响应时间预设参数、网络抖动预设参数和丢包率预设参数等,本发明实施例对此不作具体限定。

在网络参数满足预设条件的情况下,即当前网络的网络质量较好,由于云端有优秀的验证码识别能力,将本地的图片验证码上传到云端处理后返回结果,网络传输的耗时较少,此时,可以确定目标识别方式为云端识别。

本发明实施例提供的方法,参考网络参数,确定不同的目标识别方式,提高了后续图片验证码识别的可靠性。

基于上述实施例,图5是本发明提供的图片验证码识别方法中步骤150的流程示意图,如图5所示,步骤150包括:

步骤151,在所述验证结果为验证失败且所述验证失败次数大于第三失败阈值的情况下,生成验证失败提示信息;

步骤152,在所述验证结果为验证失败且所述验证失败次数小于等于所述第三失败阈值的情况下,更新所述图片路径的验证失败次数。

具体地,可以在验证结果为验证失败且验证失败次数大于第三失败阈值的情况下,可以生成验证失败提示信息。此处的验证失败提示信息用于提示用户验证码多次验证失败。此处的第三失败阈值可以是预先设置的,也可以根据实际情况进行更改,例如,第一失败阈值可以是10、11等,本发明实施例对此不作具体限定。

在验证结果为验证失败且验证失败次数小于等于第三失败阈值的情况下,可以更新图片路径的验证失败次数,再基于验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式,然后,可以基于目标识别方式,对图片验证码进行识别,得到识别结果,最后,可以基于识别结果进行验证,得到识别结果的验证结果,此处不再赘述。

基于上述任一实施例,一种图片验证码识别方法,步骤如下:

第一步,可以获取待验证的图片路径,以及图片路径的验证失败次数;

第二步,可以在验证失败次数小于等于第二失败阈值的情况下,从候选识别方式中确定目标识别方式为基础本地识别。

在验证失败次数大于第二失败阈值且小于等于第一失败阈值的情况下,从候选识别方式中确定目标识别方式为预处理本地识别。

在验证失败次数大于所述第一失败阈值的情况下,从候选识别方式中确定目标识别方式为云端识别。

其中,预处理本地识别的识别步骤,包括:

获取图片验证码;

对图片验证码进行去噪处理,并基于去噪处理所得的图片验证码进行本地识别。

其中,图片验证码的获取步骤,包括:

基于图片路径,对原始图片验证码进行截图,得到图片验证码。

第三步,基于目标识别方式,对图片验证码进行识别,得到识别结果。

第四步,可以基于识别结果进行验证,得到识别结果的验证结果。

第五步,在验证结果为验证失败且验证失败次数大于第三失败阈值的情况下,生成验证失败提示信息;

在验证结果为验证失败且验证失败次数小于等于第三失败阈值的情况下,更新图片路径的验证失败次数。

第六步,可以基于更新后的验证失败次数返回确定目标识别方式,直至验证结果为验证成功。

下面对本发明提供的图片验证码识别装置进行描述,下文描述的图片验证码识别装置与上文描述的图片验证码识别方法可相互对应参照。

基于上述任一实施例,本发明提供一种图片验证码识别装置,图6是本发明提供的图片验证码识别装置的结构示意图,如图6所示,该装置包括:

获取单元610,用于获取待验证的图片路径,以及所述图片路径的验证失败次数;

确定识别方式单元620,用于基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别;

识别单元630,用于基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果;

验证单元640,用于基于所述识别结果进行验证,得到所述识别结果的验证结果;

更新单元650,用于在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

本发明实施例提供的装置,基于验证失败次数,从候选识别方式中确定图片路径所对应图片验证码的目标识别方式,候选识别方式包括本地识别和云端识别,由此,基于目标识别方式,对图片验证码进行识别,得到识别结果,即图片验证码识别可以在本地完成,而无需上传云端进行识别,因此,图片验证码识别的过程不存在与第三方接码平台的信息传输耗时,大大降低了图片验证码识别的耗时,提高了识别响应的及时性。

基于上述任一实施例,确定识别方式单元具体包括:

本地识别单元,用于在所述验证失败次数小于等于第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为本地识别;

云端识别单元,用于在所述验证失败次数大于所述第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为云端识别。

基于上述任一实施例,本地识别单元具体用于:

在所述验证失败次数小于等于第二失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为基础本地识别;

在所述验证失败次数大于所述第二失败阈值且小于等于所述第一失败阈值的情况下,从所述候选识别方式中确定所述目标识别方式为预处理本地识别。

基于上述任一实施例,所述预处理本地识别的识别步骤,包括:

获取图片验证码;

对所述图片验证码进行去噪处理,并基于去噪处理所得的图片验证码进行本地识别。

基于上述任一实施例,所述图片验证码的获取步骤,包括:

基于所述图片路径,对原始图片验证码进行截图,得到所述图片验证码。

基于上述任一实施例,确定识别方式单元具体用于:

获取网络参数;

在所述网络参数不满足预设条件的情况下,基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式;

在所述网络参数满足预设条件的情况下,确定所述目标识别方式为云端识别。

基于上述任一实施例,更新单元具体用于:

在所述验证结果为验证失败且所述验证失败次数大于第三失败阈值的情况下,生成验证失败提示信息;

在所述验证结果为验证失败且所述验证失败次数小于等于所述第三失败阈值的情况下,更新所述图片路径的验证失败次数。

图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行图片验证码识别方法,该方法包括:获取待验证的图片路径,以及所述图片路径的验证失败次数;基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别;基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果;基于所述识别结果进行验证,得到所述识别结果的验证结果;在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的图片验证码识别方法,该方法包括:获取待验证的图片路径,以及所述图片路径的验证失败次数;基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别;基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果;基于所述识别结果进行验证,得到所述识别结果的验证结果;在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的图片验证码识别方法,该方法包括:获取待验证的图片路径,以及所述图片路径的验证失败次数;基于所述验证失败次数,从候选识别方式中确定所述图片路径所对应图片验证码的目标识别方式,所述候选识别方式包括本地识别和云端识别;基于所述目标识别方式,对所述图片验证码进行识别,得到识别结果;基于所述识别结果进行验证,得到所述识别结果的验证结果;在所述验证结果为验证失败的情况下,更新所述图片路径的验证失败次数,基于更新后的验证失败次数返回确定所述目标识别方式,直至所述验证结果为验证成功。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术分类

06120115633365