涨姿势——教你如何获取图片上的文字

 涨姿势——教你如何获取图片上的文字

同事写了一句很美丽的句子,我叫他发了一下给我,我想收藏,结果他却截图,截图,截图 给我,我很方……

看了看图片,想到了现在的图片识别,我没有什么好的方法能快速识别图片上的文字,想到这里,立马开始行动起来。

1— 我们的想法总是会使我们前进

那我们的目的就非常清楚,我们需要做的就是将图片上的文字提取出来,然后得到我们的文字信息。

想法:

1、我们还没有能力写出机器学习的本来,那我们要怎么做,这时候,我突然发现第三方绝对是一个神秘的组织群体,

2、有了第三方,那使用哪个第三方呢?当然是提供给我们需要功能的第三方。

3、搜索百度之后,才发现,百度这个第三方很好使用,就是他了。

4、刚好查询到,百度有一个图片识别的接口,好了,就用它了。

接口:

https://aip.baidubce.com/rest/2.0/ocr/v1/webimage


其他材料:

一张带有文字的图片。

02— 代码实现

获取到接口,那接下来就是去实现它:

首先来解决一下 

access_token

我们需要使用到另外的一个接口,

access_token= 'https://aip.baidubce.com/oauth/2.0/token?'       'grant_type=client_credentials&' \       'client_id=YtY4Q9wTWBFuc6B6P8XhmOV' \       '&client_secret=rwi6dj6YB4kH9IvbK6gtGvdXtq'

client_id 和 client_secret  这两个参数都需要到百度api后台去申请应用才能获取到。

然后是获取access_token的代码​:

headers={'Content-Type': 'application/json; charset=UTF-8'}host = 'https://aip.baidubce.com/oauth/2.0/token?' \       'grant_type=client_credentials&' \       'client_id=YtY4Q3UwTWBFuc6BP8XhmOV' \       '&client_secret=rwi6dj6YB4CkHhRNOIvbK6gtGvdXtq'access_token=requests.get(host,headers=headers).json()["access_token"]

access_token获取成功,那我们接下来拿出我们准备的图片​,

获取图片文字代码:

file = open("图片地址", 'rb')image = file.read()file.close()webimage=requests.post("https://aip.baidubce.com/rest/2.0/ocr/v1/webimage?access_token="+access_token,headers={"Content-Type":"application/x-www-form-urlencoded"},data={"image":base64.b64encode(image)}).json()for i in webimage["words_result"]:    print(i["words"],end='')#拼接文字输出

来看完整代码​:

import requestsimport base64headers={'Content-Type': 'application/json; charset=UTF-8'}host = 'https://aip.baidubce.com/oauth/2.0/token?' \       'grant_type=client_credentials&' \       'client_id=YtY4Q3UwTFuc6B6P8XhmOV' \       '&client_secret=rwi6dj6YB4CkHhRV1NvbK6gtGvdXtq'access_token=requests.get(host,headers=headers).json()["access_token"]file = open("图片地址", 'rb')# 读取图片image = file.read()file.close()webimage=requests.post("https://aip.baidubce.com/rest/2.0/ocr/v1/webimage?access_token="+access_token,                       headers={"Content-Type":"application/x-www-form-urlencoded"},                       data={"image":base64.b64encode(image)}).json()for i in webimage["words_result"]:    print(i["words"],end='')#拼接文字并输出

当然除了用来获取文字之外,还可以用来翻页验证码使用​。

在进行自动化操作时,验证码跳不过去,那可以试一下把验证码翻译​过来。

震惊!字符还可以这样玩……

论如何简单快捷的批量添加微信好友

如何给自己心仪的人每天发送天气提醒消息

了解更多,欢迎关注我们​:

猜你喜欢

转载自blog.csdn.net/qq_39046854/article/details/97620626