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

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

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

 

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

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

 

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='')#拼接文字并输出

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

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

 

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

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

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

 

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

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

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111409.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【LINUX】(Ubuntu)无显示器接入,使用虚拟显示器且远程控制「建议收藏」

    【LINUX】(Ubuntu)无显示器接入,使用虚拟显示器且远程控制「建议收藏」https://blog.csdn.net/qq_29757283/article/details/102604431

    2022年8月21日
    6
  • 详细总结BS架构和CS架构

    详细总结BS架构和CS架构文章目录CS架构CS结构CS的优缺点BS架构BS结构BS的优缺点CS与BS的对比总结文章内容学习百度百科和博主“向上人生”CS架构客户端-服务器,即Client-Server(C/S)结构。C/S结构通常采取两层结构。服务器负责数据的管理,客户端负责完成与用户的交互任务。CS结构在C/S结构中,应用程序分为两部分:服务器部分和客户端部分。服务器部分是多个用户共享的信息与功能,执行后台服务,如控制共享数据库的操作等;客户端部分为用户所专有,负责执行前台功能,在出错提示、在线帮助等方面都有强大

    2022年6月20日
    52
  • python爬虫 完整代码

    python爬虫 完整代码这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好!这是你第一次使用Markdown编辑器所展示的欢迎页。如果你想学习如何使用Mar

    2022年6月6日
    49
  • 多重排序 js「建议收藏」

    多重排序 js「建议收藏」如何做到多重排序js有一个sort排序函数,使用array.sort(function)传入排序函数就可以很做到排序array.sort((a,b)=>{returna-b;})注意一点就是返回结果决定了a和b的位置,如果返回结果<0,那么a排在b的前面返回结果=0a和b的相对位置不变返回结果>0b排在a的前面现在让你对学生成绩单进行排序,先按照学号,从小到大…

    2025年6月15日
    4
  • eclipse代码中文乱码解决方法

    eclipse代码中文乱码解决方法eclipse代码中文乱码解决方法:窗口→首选项→常规→工作空间→文本文件编码→其他UTF-8

    2022年5月11日
    44
  • 如何快速的增加行业经验

    如何快速的增加行业经验

    2021年8月19日
    56

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号