先给大家推荐一款截图软件,非常方便,可以把截出的图片放置到窗口上
并且可以随意移动,这个是微软开发的一款工具:Snipaste
支持各类电脑系统,先简单介绍一下它的用法,F1截图,ctrl+c把图片复制到剪贴板,方便下次使用(ctrl+v)。
我们要做一款截图工具,也就是模仿这款软件的功能。
利用到的python模块有:
keyboard为我们的键盘记录模块,判断我们是否按下了F1键,PIL为我们的图片处理库,导入了其中的剪贴板模块。
if not keyboard.wait(‘f1‘): if not keyboard.wait(‘ctrl+c‘): sleep(0.05) img = ImageGrab.grabclipboard() img.save(‘test.png‘)
若未按下F1那么程序处于阻塞状态,只有按下后代码才会向下执行。 先F1截图,然后Ctrl+c保存我们的图片到剪贴板。
最后把图片从剪贴板中取出来保存为 test.png。
图片保存后就要识别, 这里利用到的是百度云的接口。
可以看到人工智能产品中提供文字识别接口。注册账号登陆,点击进入通用文字识别即可。
选择立即使用,创建一个应用。会自动生成一些秘钥。
最后点技术文档:
选择python-SDK,右方箭头指的是前面生成的秘钥,把这段代码复制下来,然后把接口说明内连接服务器的代码也拷贝下来即可!
""" 你的 APPID AK SK """ APP_ID = ‘‘ API_KEY = ‘‘ SECRET_KEY = ‘‘ client = AipOcr(APP_ID, API_KEY, SECRET_KEY) """ 读取图片 """ file_path = r‘test.png‘ def get_file_content(path): with open(path, ‘rb‘) as fp: return fp.read() image = get_file_content(file_path) """ 调用通用文字识别, 图片参数为本地图片 """ response = client.basicGeneral(image) all_text = ‘‘ for i in response[‘words_result‘]: all_text += i[‘words‘]+‘\n‘ print(all_text)
最终的效果:
为了能够让大家更加好的收到我的最新推送,可以关注我的个人公众号:
有趣的python小项目,利用python制作一款截图识别软件!
原文:https://www.cnblogs.com/qdsn/p/11630649.html