python截图识别文字_用百度ocr+微信截图实现文字识别
作用:將圖片中的文字識(shí)別出來(lái)
一、調(diào)用微信截圖dll控件
將微信截圖插件復(fù)制到項(xiàng)目文件,使用ctypes加載(膠水語(yǔ)言就是給力)
def capture():
try:
dll = ctypes.cdll.LoadLibrary('PrScrn.dll')
except Exception:
print("Dll load error!")
return
else:
try:
dll.PrScrn(0)
except Exception:
print("Sth wrong in capture!")
return
二、編寫(xiě)自己的百度ocr類,參考百度文檔
class BaiduApi(object):
def __init__(self, filePath):
""""初始化加載賬戶信息 """
super(BaiduApi, self).__init__()
conf = ConfigParser()
conf.read(filePath)
app_id = conf.get("user_info", "appid")
app_key = conf.get("user_info", "app_key")
secrity_key = conf.get("user_info", "secrity_key")
self.client = AipOcr(app_id, app_key, secrity_key)
""" 讀取圖片 """
@staticmethod
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read()
def imagetotext(self, filePath):
image = self.get_file_content(filePath)
self.texts = self.client.basicGeneral(image)
ret = ""
for words in self.texts["words_result"]:
ret = ret + "".join(words.get("words", ""))
print(ret)
三、利用PIL將微信截圖保存到臨時(shí)目錄
注:原本想直接調(diào)用api做ocr識(shí)別,卻提示類型錯(cuò)誤 baidu_info.ini為自己的appid信息
ImageGrab.grabclipboard() 獲取剪切板上的圖片并保存到目錄
a = BaiduApi("./baidu_info.ini")
capture()
img = ImageGrab.grabclipboard()
img.save("./123.png")
a.imagetotext("./123.png")
四、效果展示(識(shí)別率還是很讓人滿意滴)
總結(jié)
以上是生活随笔為你收集整理的python截图识别文字_用百度ocr+微信截图实现文字识别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2年前 影子
- 下一篇: 分层架构web容器的配置安全