目录复制
目录
背景
-
我们经常需要将图片转文字,当然在现如今,已经有很多工具可以实现了,比如qq、微信的图片转文字,或者是一些识别网站,我们还可以自己写一个小工具来实现,就是调用百度的接口。
-
如果不调用接口:在这篇文章的第4个的,如下图:点我查看
-
那么本篇文章,主要是调用百度的接口
第一步,注册登录+实名制验证
百度智能云:https://console.bce.baidu.com/
第二步,创建一个应用
创建成功!!点击应用列表查看一下吧!
第三步,查看开发文档,我们要不跳过吧,哈哈哈,我直接奉上代码
1、获取TOKEN,直接用代码获取吧
我给这个py文件取名【get_access_token.py】
将自己的API Key,和 Secret Key,填在如下载位置
import requests
import json
def get_token():
url = "https://aip.baidubce.com/oauth/2.0/token?" \
"client_id=自己的API Key" \
"&client_secret=自己的Secret Key" \
"&grant_type=client_credentials"
payload = ""
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
return response.text
get_token()
2、调用一下函数
ok,拿到自己的access_token
第四步,终于最后一步啦
看一下目录结构
文件夹\文件 | 用途 |
---|---|
图片 | 用来存放你想转文字的图片 |
get_access_token.py | 刚刚上一步写的,获取的token |
main.py | 主程序 |
main.py,可以直接运行
import json
import os
import requests
import base64
from get_access_token import get_token
'''
通用文字识别(高精度版)
'''
request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"
access_token = json.loads(get_token())['access_token']
headers = {'content-type': 'application/x-www-form-urlencoded'}
# 二进制方式打开图片文件
for i in os.listdir("./图片/"):
f = open("./图片/"+i, 'rb')
img = base64.b64encode(f.read())
params = {"image":img}
request_url = request_url + "?access_token=" + access_token
response = requests.post(request_url, data=params, headers=headers)
if response:
# print(response.json()["words_result"])
for w in response.json()["words_result"]:
print(w["words"])