手把手教截图识别文字

2019-09-20 16:42:41 浏览数 (3)

最近不想打字,直接截图然后识别出来文字,不就可以不用打吗?我就是太懒了。

keyboard

这个库让你可以控制和监控输入设备。

对于每一种输入设备,它包含一个子包来控制和监控该种输入设备:

安装

代码语言:javascript复制
pip install keyboard==0.9.3

截图功能完成

当我按下alt a就开始截图,注意要登着微信,然后就enter保存

代码语言:javascript复制
import keyboard
from PIL import ImageGrab
import time

def screen():
    print('开始截图')
    # 使用微信的截图热键
    keyboard.wait('alt a')
    # 保存
    keyboard.wait('enter')
    # 图片保存需要时间
    time.sleep(0.5)
    # 读取剪切板的图片
    image = ImageGrab.grabclipboard()
    # 保存图片
    image.save('screen.jpg')
    print('图片保存完成')


if __name__ == '__main__':
    screen()

效果如下

截图识别

使用百度云来进行识别

百度的技术,阿里的运营,腾讯的产品,江湖常话。

创建文字识别的应用

官方的教程

https://cloud.baidu.com/doc/OCR/index.html

记得pip install aip

代码语言:javascript复制
from aip import AipOcr

""" 你的 APPID AK SK """
APP_ID = ''
API_KEY = ''
SECRET_KEY = ''

client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
"""读取图片"""
def get_file_content(filepath):
    with open(filepath, 'rb') as f:
        return f.read()
def get_img_content(img):
    image_content = ''
    content = client.basicAccurate(image=img)
    # print(content)
    for words in content['words_result']:
        # print(words)  # 字典
        image_content  = words['words']
    print(image_content)
    with open('demo.txt','w',encoding='utf-8') as f:
        f.write(image_content)

if __name__ == '__main__':
    # screen()
    img = get_file_content('screen.jpg')
    get_img_content(img)

效果如下

pyinstaller打包

一定要在代码最后面加上input(),这样打开exe不会一散而过

执行pyinstaller -F demo.py,搞定

还不如直接复制粘贴,但是如果复制不了就派上用场了

0 人点赞