前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python截图识别文字_python截图并转换文字「建议收藏」

python截图识别文字_python截图并转换文字「建议收藏」

作者头像
全栈程序员站长
发布于 2022-08-13 02:25:04
发布于 2022-08-13 02:25:04
3.4K0
举报

大家好,又见面了,我是你们的朋友全栈君。

截图识别文字

作者

万开国[acewan]

【摘要】

本文主要介绍了使用pyHook、pythoncom、pytesseract、PIL、win32api等module实现python的截图识别文字功能。

【正文】

一准备及介绍

1.pyhook

pyHook通过pip直接安装比较困难,可以先下载whl文件再使用pip安装

选择与python环境一致的文件下载,使用cmd导向到下载文件夹,执行安装即可

其他module直接在控制台使用pip命令安装即可

2.module介绍

Pyhook:用于windows平台,监听鼠标和键盘事件,

:提供了访问win32 api的能力

Pytesseract:基于google’s Tesseract-OCR的独立封装包

PIL:平台上的图像处理标准库

Win32api:封装windows win32 api额模块

二具体代码

# coding: utf8

import pyHook

import pythoncom

import pytesseract

import sys

from PIL import Image, ImageGrab

from win32api import GetSystemMetrics as

gsm

#提前绑定鼠标位置事件

old_x, old_y = 0, 0

new_x, new_y = 0, 0

full = False

hm = None

chinese = True

#图片识别文字方法,

def GetString(fileName):

#

print(imagePath)

if(chinese):

text = pytesseract.image_to_string(Image.open(fileName), lang=’chi_sim’)

else:

text = pytesseract.image_to_string(Image.open(fileName))

fl = open(‘Testxt.txt’, ‘w’)

fl.write(text)

fl.close()

print(text)

return

def on_mouse_event(event):

global old_x, old_y, new_x, new_y, full, hm

if full:

image = ImageGrab.grab((0, 0, gsm(0), gsm(1)))

else:

#鼠标左键按下时,记录当前鼠标位置为截图矩形对角线的起始点

if event.MessageName == “mouse left down”:

old_x, old_y = event.Position

#鼠标左键抬起时,记录当前位置为截图矩形对角线的结束点

if event.MessageName == “mouse left up”:

new_x, new_y = event.Position

#解除事件绑定

hm.UnhookMouse()

hm = None

image = ImageGrab.grab((old_x, old_y, new_x, new_y))

fiName=’printscreen.jpg’

image.save(fiName)

GetString(fiName)

if event.MessageName == “mouse left down”:

sys.exit()

return

def capture():

#创建钩子管理对象

hm = pyHook.HookManager()

#将已准备好的方法注册到鼠标事件

hm.SubscribeMouseAll(on_mouse_event)

#开始监听鼠标事件

hm.HookMouse()

#一直监听直到退出程序

pythoncom.PumpMessages()

capture()

三效果展示

截图效果:

转文字效果:

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/132551.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月3,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
用Python捕捉和模拟鼠标事件
这个假期玩了不少galgame,不过有些很老的游戏没有自动运行模式,点击鼠标又太伤按键了,于是想把滚动鼠标滚轮映射为点击鼠标。 网上搜了一下,没发现什么现成的软件,而按键精灵又太重量级了,于是考虑干脆自己用Python写个算了。 很幸运地找到《用Python监听鼠标和键盘事件》这篇文章,于是把PyHook和PyWin32都装上了(建议下exe版,免得安装时各种蛋疼)。
py3study
2020/01/09
3.5K0
Python 键盘鼠标监听
异想天开的想记录一下自己每天的键盘键位走向,于是就在网上搜索了一下相关的实现,然后就发现了一个第三方的库pyHook.封装的很好,我们只需要傻瓜式的调用里面的API就可以了。
py3study
2020/01/08
3.3K0
Python 键盘鼠标监听
Python Hook
# -*- coding: utf-8 -*- # import pythoncom import pyHook def onMouseEvent(event): # 监听鼠标事件 print "MessageName:",event.MessageName print "Message:", event.Message print "Time:", event.Time print "Window:", event.Window
py3study
2020/01/09
1.1K0
Python Hook
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键。超简单,几行代码搞定。
本来很简单的东西,网上很多文章一堆东西甩在哪,很难看懂,让人感觉有多难。学东西就是要一步一步的来,咱们先入门,然后再去看那些更高级的内容,下面我就来给大家演示。
小蓝枣
2020/09/24
3.7K0
Python 技术篇-pyHook键盘鼠标监听事件,监测鼠标键盘按键。超简单,几行代码搞定。
Python 技术篇-基于PyHook3+threading多线程实现鼠标单击事件和双击事件的识别实例演示
这里我设定了一个变量 time_k 和 1 秒的多线程延迟变量来控制。 # -*- coding: UTF8 -*- import PyHook3 import pythoncom import threading time_k = 0; def execute_script(time_k_old, action): ''' 作用:执行脚本 ''' try: global time_k if(time_k ==1):
小蓝枣
2021/12/01
1.7K0
Python 技术篇-基于PyHook3+threading多线程实现鼠标单击事件和双击事件的识别实例演示
python屏幕文字识别_python识别图片文字
因为学校要求要刷一门叫《包装世界》的网课,而课程里有200多道选择题,而且只能在手机完成,网页版无法做题,而看视频是不可能看视频的,这辈子都不可能看…所以写了几行代码来进行百度搜答案。
全栈程序员站长
2022/09/06
40.1K0
使用Python来截图
在极客学院讲授《使用Python编写远程控制程序》的课程中,涉及到查看被控制电脑屏幕截图的功能。
青南
2019/01/09
1.3K0
Python盗号原理-代码实现截屏键盘记录远程发送
最简单的,也是技术手段相对较低的盗号方式当属钓鱼了(当然,社工更考验心理),除了钓鱼网站,就是发布某些带有诱惑性的工具,诱导消费者下载,运行后开启后门,或者启用钩子进行键盘记录。本篇文章我们就来讲一讲技术的实现。
IT派
2018/07/30
1.2K0
Python盗号原理-代码实现截屏键盘记录远程发送
Python+tkinter+pillow实现屏幕任意区域截图
基本思路:首先获取并显示全屏幕截图,然后在全屏幕截图上响应鼠标左键按下和抬起事件,最后进行二次截图。 import tkinter import tkinter.filedialog import os from PIL import ImageGrab from time import sleep root = tkinter.Tk() #设置窗口大小与位置 root.geometry('100x40+400+300') #设置窗口大小不可改变 root.resizable(False, False) #
Python小屋屋主
2018/04/16
8.1K3
用python做一个划词翻译软件
在我们学习的时候,在我们查找文档的时候,很多内容都是英文的,如果你的英文不好,就很难去阅读这篇文章,语言不通是我们学习的最大的绊脚石,虽然谷歌浏览器有翻译的功能,翻译出来的效果也是挺不错,但是这样子阅读文章并不能对我们的工作学习起到帮助,反倒是机械化的翻译有可能会是你的中文水平下降,阅读一篇外国文章,最重要的就是对每个单词的了解,理解,如果单词的意思都不懂,更不要想去理解文章的意思了。
sjw1998
2019/10/11
2.4K0
用python做一个划词翻译软件
Python盗号原理-代码实现截屏键盘记录远程发送-不要做坏事-木马外挂学习使用
这年头盗号的从出不穷,不是脱裤就是社工钓鱼。今天呢我们就以前面的几篇技术文章做铺垫,来讲一下python盗号的原理(学习用途,请勿用于违法犯罪),知己知彼方能百战不殆嘛。
用户1682544
2018/05/01
3.4K9
Python盗号原理-代码实现截屏键盘记录远程发送-不要做坏事-木马外挂学习使用
Python实现计算机屏幕任意区域截图
程序功能与用法:运行后有个主窗体,上面有个按钮,单击后开始截图,鼠标坐标落下开始截图,鼠标左键抬起表示截图结束,然后弹出对话框提示保存截图文件。 本文要点在于Python扩展库pillow提供的ImageGrab支持全屏幕或指定区域的截图。 import tkinter import tkinter.filedialog import os from PIL import ImageGrab from time import sleep #创建tkinter主窗口 root = tkinter.Tk() #
Python小屋屋主
2018/04/16
6.2K0
用Python做一个游戏辅助脚本,完整编程思路分享!
简述:本文将以4399小游戏《 宠物连连看经典版2 》作为测试案例,通过识别小图标,模拟鼠标点击,快速完成配对。对于有兴趣学习游戏脚本的同学有一定的帮助。
python学习教程
2020/08/31
4.3K0
用Python做一个游戏辅助脚本,完整编程思路分享!
Python:监控键盘输入、鼠标操作,并
  使用pyhook模块可以很快地完成键盘及鼠标事件捕获,本来想使用python的logging模块,但测试时发现,因为鼠标事件频率太高,导致写时报I/O错误的异常,所以使用了自己写文件记录日志的方式。
py3study
2020/01/06
2.1K0
厉害了,用Python实现自动扫雷
自动扫雷一般分为两种,一种是读取内存数据,而另一种是通过分析图片获得数据,并通过模拟鼠标操作,这里我用的是第二种方式。
sergiojune
2018/12/28
1.4K0
Python PyWin32 模块
Python的生产效率极高,通过使用pypiwin32模块可以快速调用windows API函数,结合Python的高效开发能力,同等时间内比C++能更快的达到目标,pypiwin32模块封装了Win32下的常用定义,函数方法等。
王瑞MVP
2022/12/28
2.3K0
Python PyWin32 模块
用python实现选择截图区域
一直想用python实现一个类似QQ截图的功能,但不直接截图,而是返回截图的区域,以下是代码
py3study
2020/01/10
3.8K0
【Python】截取目标窗口内容并保存
相关参考文章: python-鼠标拖拽 Python时间sleep()方法 如何获取电脑桌面坐标,如何获取屏幕位置 超简单 ImageGrab.grab()方法截图之后,图片如何保存在指定路径 Python 脚本自动窗口截图 python windows 指定窗口截图 完美解决 Could not find a version that satisfies the requirement 安装包名字 (from versions: ) ---- 在微信小程序中拖动鼠标完成翻页功能,翻一页截
半生瓜的blog
2023/05/13
1.2K0
Python简单实现阴阳师挂机脚本
对各个按钮等需要点击的地方进行截图,然后对整个屏幕截屏,通过模板匹配得到截图在截屏中的坐标位置,进行点击
IT运维技术圈
2022/06/26
4K1
Python简单实现阴阳师挂机脚本
python实现百万英雄答题神器
最近百万英雄之类的答题软件广受大家的喜爱,不过对于我这菜鸟基本没有拿过奖。 但是作为一名码农怎么能忍,于是研究出了即将要与大家分享的答题神器。
先知先觉
2019/01/21
1K0
相关推荐
用Python捕捉和模拟鼠标事件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档