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

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

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

 

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

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

 

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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • hexo latex 换行 多行公式 终极解决方案

    hexo latex 换行 多行公式 终极解决方案hexo的LaTeX可算把我给折腾死了。。。问题:多行公式无法显示(hexo-renderer-marked,mathjax)看到网上说是因为渲染引擎把\\渲染成\,然后才交给mathjax渲染公式都说把hexo-renderer-marked换成hexo-renderer-kramed,然后再node_modules/kramed/lib/rules/inline.js里修改escape项,照做了,确实解决了问题,但是却出现了新的问题:复杂公式显示错乱,遂放弃。又看到在node_modules/m

    2022年5月14日
    50
  • android怎么备份到苹果,安卓手机数据怎么导入苹果手机?「建议收藏」

    android怎么备份到苹果,安卓手机数据怎么导入苹果手机?「建议收藏」原标题:安卓手机数据怎么导入苹果手机?现如今,安卓系统的手机和苹果ios系统的手机都有自己的粉丝阵营,不过两家粉丝也经常相互交流、互相“跳墙”,所以便有很多安卓手机用户在购买新手机时选择了苹果手机,或者是反过来。因为,手机的选择权在自己的手上,但是换过手机后,旧手机中的便签数据怎么导入新手机中呢?比如说安卓手机的便签数据应该如何导入苹果手机呢?毕竟,手机自带的便签或备忘录不像手机相册、通讯录那样,…

    2022年5月25日
    47
  • 新鲜出炉: IE8 beta1 的下载地址以及官方论坛

    新鲜出炉: IE8 beta1 的下载地址以及官方论坛

    2021年7月26日
    95
  • 基于大数据的舆情分析_舆情与大数据

    基于大数据的舆情分析_舆情与大数据数据工厂,是一套多组件化数据清洗加工及数据存储管理平台,同时能够管理所有的数据库的备份方案。支持多数据源类型的数据同步实现和数据仓库其他的数据源互通。对接收数据进行解压,对外提供压缩后的数据。

    2026年2月2日
    4
  • 如何学习FPGA「建议收藏」

    如何学习FPGA「建议收藏」PS:笔者强烈建议诸位注册一个EETOP的账号,每天签到或者发贴、回贴就有积分了,里面的资源非常丰富,各种软件、资料都能找到。一、入门首先要掌握HDL(HDL=verilog+VHDL)。第一句话是:还没学数电的先学数电。然后你可以选择verilog或者VHDL,有C语言基础的,建议选择VHDL。因为verilog太像C了,很容易混淆,最后你会发现,你花了大量时间…

    2022年5月3日
    80
  • RowBounds实现分页[通俗易懂]

    RowBounds实现分页[通俗易懂]但使用RowBounds后,会将id>0的所有数据都加载到内存中,然后跳过offset=3条数据,截取10条数据出来,若id>0的数据有100万,则100w数据都会被加载到内存中,从而。

    2022年9月22日
    5

发表回复

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

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