利用Python进行windows系统上的图像识别与点击(Mac OS系统也可以)
系统环境:
1、安装了python
2、安装了pyautogui模块
windows系统:无需安装依赖模块,在cmd中直接输入pip install pyautogui即可完成安装
Mac OS系统:需要先安装pyobjc模块,最后安装pyautogui
pip install pyobjc-core
pip install pyobjc
pip install pyautogui
首先为python安装pyautogui模块
Windows系统直接在cmd下输入pip install pyautogui
验证是否安装成功
在cmd下输入python,之后输入import pyautogui,再输入pyautogui.__version__

操作步骤:
第一步:将需要识别的图像用截图软件进行截图,例如截取windows系统上自带计算器上的数字8,保存文件命名为target.png


第二步:书写代码,将代码与target.png放置在同一路径下
import pyautogui
#判定目标截图在系统上的位置
location=pyautogui.locateOnScreen(image='target.png')
#输出坐标
print(location)
#利用center()函数获取目标图像在系统中的中心坐标位置
x,y=pyautogui.center(location)
print('center()',x,y) #对识别出的目标图像进行点击
#参数x,y代表坐标位置,clicks代表点击次数,button可以设置为左键或者右键
pyautogui.click(x=x,y=y,clicks=1,button='left')
第三步:执行,需要注意的是,计算器必须在最上层,否则会导致无法识别。
如下图,运行程序后直接点击了计算器上的8

ps:若屏幕上有多个计算器的按钮8需要识别,需要将
location=pyautogui.locateOnScreen(image='target.png')改为
location=pyautogui.locateAllOnScreen(image='target.png')
再利用循环点击
import pyautogui
#判定目标截图在系统上的位置
location=pyautogui.locateAllOnScreen(image='target.png')
#输出坐标 for i in location: print(i) #利用center()函数获取目标图像在系统中的中心坐标位置
x,y=pyautogui.center(i)
print('center()',x,y) #对识别出的目标图像进行点击
#参数x,y代表坐标位置,clicks代表点击次数,button可以设置为左键或者右键
pyautogui.click(x=x,y=y,clicks=1,button='left')

利用Python进行windows系统上的图像识别与点击(Mac OS系统也可以)的更多相关文章
- 教你Mac OS系统四种改动Hosts文件的方法
使用Mac OS X系统的用户.在某些时候可能遇到了须要改动系统Hosts文件的情况,那么Mac OS系统怎样改动Hosts文件呢?和Windows系统有何差别呢?我们知道事实上改动Hosts文件仅仅 ...
- Mac OS系统四种修改Hosts文件的方法列举
转自:https://blog.csdn.net/u012460084/article/details/40186973 使用Mac OS X系统的用户,在某些时候可能遇到了需要修改系统Hosts文件 ...
- 利用Python编写Windows恶意代码!自娱自乐!勿用于非法用途!
本文主要展示的是通过使用python和PyInstaller来构建恶意软件的一些poc. 利用Python编写Windows恶意代码!自娱自乐!勿用于非法用途!众所周知的,恶意软件如果影响到了他人的生 ...
- 在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结
在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结 一.资料来源: 网上一共找到两个方法,一个是视频上的教程,一个是网页资料. 二.视频资料方法内容:1.install qe ...
- 首个攻击该Mac OS系统的恶意软件——KeRanger
首个攻击该Mac OS系统的恶意软件——KeRanger 曾几何时,苹果操作系统一度被人认为是最安全的操作系统.然而近几年,针对苹果系统的攻击日益增多,影响范围也越来越大.无独有偶,近日,苹果Mac ...
- 使用VMware Workstation Pro 12 虚拟机安装Mac OS系统教程 全程图解
导读:使用虚拟机安装Windows.Linux或者Ubuntu系统大家或许看了很多,但如何使用VMware Workstation Pro 12安装Mac OS,的确需要好好研究一番:否则无法下手,因 ...
- 苹果Mac OS系统修改Hosts文件的方法
使用苹果Mac OS X系统的用户有很多,近期也有不少童鞋问我Mac怎么修改hosts,修改hosts的方式有很多,下面我就整理两种比较方便的方法吧,希望能够帮到大家. 在某些时候可能遇到了需要修改系 ...
- VMWare15 安装 Mac OS 系统
文章目录VMWare15 安装 Mac OS 系统安装环境工具准备准备工作MAC虚拟机设置启动MAC前准备工作安装系统安装VMware Tool注意事项参考链接安装环境WIN10VMware Work ...
- 苹果电脑Mac OS系统重装图文详解
苹果电脑Mac OS系统重装图文详解 本文来自于[系统之家] www.xp85.com现在电脑都很强大,可是也很脆弱,常常需要你去维护,甚至经常需要你重装系统,那么Mac OS又如何重装系统呢?刚刚使 ...
随机推荐
- CPU与GPU,我们应该使用哪个?
CPU与GPU,我们应该使用哪个? CPU与GPU CPU即中央处理器,GPU即图形处理器. 两者的相同之处:两者都有总线和外界联系,有自己的缓存体系,以及数字和逻辑运算单元 两者的区别之处:在于存在 ...
- NSURLSession断点下载
#import <Foundation/Foundation.h> @class XHDownLoadManager; #pragma mark - delegate Method @pr ...
- STL的容器哈希表
C++ STL中,哈希表对应的容器是 unordered_map(since C++ 11).根据 C++ 11 标准的推荐,用 unordered_map 代替 hash_map. 与Map的区别 ...
- java调用shell脚本小demo
复制指定文件cpp.sh: [root@localhost soft]# vim cpp.sh#!/bin/bash name="$1"\cp /home/soft/test/${ ...
- larval 使用redis做缓存
1.存redis 使用setex命令可以同时设置数据和保存时间 $data = [ 'name'=>zhangsan, 'age' => 28, 'sex' => 1 ]; Redi ...
- uoj280 【UTR #2】题目难度提升 堆维护中位数+set
题目传送门 http://uoj.ac/problem/280 题解 这道题很妙啊. 这种题目如果给予选手足够的时间,每一个选手应该都能做出来. 大概就是核心思路看上去很简单,但是想要推出来并不简单. ...
- Python---进阶---logging---logger
一.####用logging的四大组件来实现日志的功能 - 打印出函数执行的时间,日志的等级,日志的消息 - 用装饰器 - 不同的日志,要记录不同等级的日志消息 ------------------- ...
- day1 instance,round,divmod,imput, 字符串
>>> a = '123' >>> isinstance(a, str) True >>> b = 1 >>> type(b ...
- 【leetcode】1108. Defanging an IP Address
题目如下: Given a valid (IPv4) IP address, return a defanged version of that IP address. A defanged IP a ...
- Vue Vue项目目录结构梳理
Vue项目目录结构梳理 by:授客 QQ:1033553122 1. 结构梳理 . ├── build/ # webpack 配置文件: │ ...