Python文字截圖識(shí)別OCR工具實(shí)例解析
一、簡(jiǎn)介
你一定用過那種“OCR神器”,可以把圖片中的文字提取出來,極大的提高工作效率。
今天,我們就來做一款實(shí)時(shí)截圖識(shí)別的小工具。顧名思義,運(yùn)行程序時(shí),可以實(shí)時(shí)把你截出來的圖片中的文字識(shí)別出來。
二、模塊
import keyboard # 用于監(jiān)控鍵盤按下,觸發(fā)事件(pip install keyboard)import timefrom aip import AipOcr # 調(diào)用百度接口(pip install baidu-aip)from PIL import ImageGrab # 用于保存屏幕截圖
三、獲取百度應(yīng)用接口
AI開放平臺(tái)文檔中心
https://ai.baidu.com/ai-doc

查看python語言的SDK文檔

點(diǎn)擊右上角(控制臺(tái)),登錄自己的百度賬號(hào),創(chuàng)建“文字識(shí)別”的應(yīng)用


四、代碼實(shí)現(xiàn)
#! /usr/bin/env python3# -*- coding:utf-8 -*-# Author : MaYi# Blog : http://www.cnblogs.com/mayi0312/# Date : 2020-03-02# Name : test_ocr# Software : PyCharm# Note : 用Python開發(fā)截圖識(shí)別OCR小工具import keyboard # 用于監(jiān)控鍵盤按下,觸發(fā)事件(pip install keyboard)import timefrom aip import AipOcr # 調(diào)用百度接口(pip install baidu-aip)from PIL import ImageGrab # 用于保存屏幕截圖# 百度識(shí)別接口配置信息APP_ID = ’你的App ID’API_KEY = ’你的API Key’SECRET_KEY = ’你的Secret Key’while True: # 1、利用QQ截圖到剪貼板 # 輸入鍵盤的觸發(fā)事件 keyboard.wait(hotkey='ctrl+alt+a') keyboard.wait(hotkey='enter') time.sleep(0.1) # 2、保存截圖 image = ImageGrab.grabclipboard() image.save('screen.png') # 3、利用百度API識(shí)別截圖中的文字 client = AipOcr(APP_ID, API_KEY, SECRET_KEY) with open('screen.png', ’rb’) as f: image = f.read() # 調(diào)用百度API通用文字識(shí)別(高精度版),提取圖片中的內(nèi)容 text = client.basicAccurate(image) result = text['words_result'] for i in result: print(i['words']) # 我是分隔線 print('-' * 50)
運(yùn)行結(jié)果預(yù)覽:

五、總結(jié)
1)等待用戶截圖
2)保存截圖到當(dāng)前目錄
3)識(shí)別截圖中的文本
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Android table布局開發(fā)實(shí)現(xiàn)簡(jiǎn)單計(jì)算器2. jQuery 實(shí)現(xiàn)DOM元素拖拽交換位置的實(shí)例代碼3. 理解PHP5中static和const關(guān)鍵字4. php模擬實(shí)現(xiàn)斗地主發(fā)牌5. IntelliJ IDEA安裝插件的方法步驟6. spring acegi security 1.0.0 發(fā)布7. vue 使用localstorage實(shí)現(xiàn)面包屑的操作8. Python random庫使用方法及異常處理方案9. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟10. Vuex localStorage的具體使用

網(wǎng)公網(wǎng)安備