使用百度的API进行验证码识别(图片形式的文字验证码与字母验证码) 您所在的位置:网站首页 百度云删文件要验证码 使用百度的API进行验证码识别(图片形式的文字验证码与字母验证码)

使用百度的API进行验证码识别(图片形式的文字验证码与字母验证码)

2024-07-09 14:28| 来源: 网络整理| 查看: 265

使用百度的API来识别验证码,百度有每月若干次的免费次数配额:可以通过百度接口免费测试资源查看 接口免费测试资源 选择高精度版(可以根据识别场景自己决定,或者先在功能演示界面测试一下测试一下 : )

百度OCR api使用流程 如何获取?创建应用使用样例,在线调试具体使用

如何获取?

首先得要有一个百度的账号,需要进行实名认证,登录百度智能云,并查看自己是否实名认证(会显示已实名认证或未实名认证): 登录并查看是否实名

找到产品中的文字识别: 在这里插入图片描述

点击立即使用: 在这里插入图片描述

这里面有免费尝鲜和创建应用,需要先领取自己需要的免费配额然后创建应用: 在这里插入图片描述 选择其中一项然后点击0元领取(我已经领取过**通用文字识别(高精度)**所以下面就没有了,但是其他的还有,说明这些里面应该可以免费领取不止一个,毕竟还有一个 全部 的选项): 领取自己的测试资源 自此,就领取到自己的免费配额了,接下来就是使用了: :)

创建应用

创建应用这一步好像并没有什么特别需要注意的,按需创建即可:主要就是填填应用名称、接口选择 创建应用 我开发的是web应用,不需要Android和IOS系统的HTTP SDK,可以按需勾选: 创建应用 :) 创建完毕之后,可以在应用列表中查看自己创建的应用: 应用列表

使用样例,在线调试

先在API在线调试这里查看一下具体示例代码 在线调试 然后自己调节一下参数: 示例代码 然后上传图片,点击调试: 使用样例 下面是调试结果,(如果调试成功的话会)返回一个json格式: 识别结果

具体使用

只需要将示例代码复制下来稍加修改运行即可:

```python import base64 import urllib import requests API_KEY = "gmbLys*******xrToI" # 从上一步复制下来就会自动填充成你自己的KEY,或者从我这里复制自己手动填成自己的KEY即可 SECRET_KEY = "cQVB*******Kymg1" def main(): url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic?access_token=" + get_access_token() image = get_file_content_as_base64("./截图/009.png",True) # 这里的路径改为需要的路径 payload = f'image={image}'# 是的,我就修改了这两行代码 headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'Accept': 'application/json' } response = requests.request("POST", url, headers=headers, data=payload) print(response.text) def get_file_content_as_base64(path, urlencoded=False): """ 获取文件base64编码 :param path: 文件路径 :param urlencoded: 是否对结果进行urlencoded :return: base64编码信息 """ with open(path, "rb") as f: content = base64.b64encode(f.read()).decode("utf8") if urlencoded: content = urllib.parse.quote_plus(content) return content def get_access_token(): """ 使用 AK,SK 生成鉴权签名(Access Token) :return: access_token,或是None(如果错误) """ url = "https://aip.baidubce.com/oauth/2.0/token" params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY} return str(requests.post(url, params=params).json().get("access_token")) if __name__ == '__main__': main()

"./截图/009.png"图片是:验证码图片

在本机运行代码,结果如下:

{"words_result":[{"words":"0+9+4*6答案是?"}],"words_result_num":1,"log_id":1768475643012942234}

识别出来了内容为“0+9+4*6答案是?” —————— 接下来有什么好用的再容我慢慢尝试。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有