首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 自动化指南(繁琐工作自动化)第二版:二十、使用 GUI 自动化控制键盘和鼠标

原文:https://automatetheboringstuff.com/2e/chapter20/ 了解用于编辑电子表格、下载文件和启动程序的各种 Python 模块是很有用的,但有时您需要使用的应用没有任何模块...这些产品实际上与您可以用pyautogui模块自己制作的 Python 脚本没有什么不同,该模块具有模拟鼠标移动、按钮点击和鼠标滚轮滚动的函数。...这些特性来自 PyAutoGUI 包含的 PyGetWindow 模块。 获取活动窗口 屏幕上的活动窗口是当前处于前台并接受键盘输入的窗口。...PyAutoGUI 窗口控制特性的完整文档可以在找到。...使用getWindowsWithTitle()确保你认为你的脚本点击的应用窗口存在,并使用activate()方法将该窗口放在前台。 使用第十一章的中的logging模块来保存你的脚本所做的日志文件。

8.2K51
您找到你想要的搜索结果了吗?
是的
没有找到

使用 PyAutoGUI 库在 Python 中自动化 GUI 交互

PyAutoGUI是一个很棒的模块,用于自动化Python应用程序中的图形用户界面交互。...开始 在我们深入研究使用 PyAutoGUI 来自动化 GUI 交互之前,我们首先需要使用 pip 安装 PyAutoGUI 模块。 但是,由于它不是内置的,我们必须首先安装 PyAutoGUI 库。...基本用法 我们需要做的第一件事是将 PyAutoGUI 模块导入我们的 Python 脚本 - import pyautogui PyAutoGUI 模块包括用于控制键盘和鼠标以及截屏和识别屏幕上图形的例程...import pyautogui pyautogui.hotkey('ctrl', 'v') 鼠标控制 要使用 PyAutoGUI 模拟鼠标输入,我们可以使用 moveTo()、click() 和 dragTo...在本教程中,我们了解了 PyAutoGUI特性和功能,例如安装和基本用法、键盘和鼠标控制以及图片识别。

43720

在Python中如何使用GUI自动化控制键盘和鼠标来实现高效的办公

pyautogui 模块包含了一些函数,可以模拟鼠标移动、按键和滚动鼠标滚轮。   ...这是我的GUI上部分,还有下一部分在下一篇文章里,如果帮到你的话,记得点个赞   文章目录  1.1 安装pyautogui 模块1.2 解决程序出现的错误,及时制止1.2.1 通过任务管理器来关闭程序...模块  在cmd命令行界面输入 pip install pyautogui 国内会有延迟,可能出现超时读取数据失败,多安装几遍就好了,建议安装时候保持界面在安装界面,保持你的宽带最大程度的给与这个安装进程...你可能没有办法及时关闭IDLE运行窗口或者是DOS界面的python运行窗口,幸而python有几种办法来防止或者恢复这种错误。 ...这时不应该继续(可能会点击到错误的东西,造成严重破坏),程序可以 “看到”它没有点击在正确的东西上,并自行停止。

4K31

使用 Python 进行 Windows GUI 自动化

pyautogui pyautogui 是一个纯 Python 的 GUI 自动化库,它可以模拟键盘输入、鼠标点击和移动、在屏幕上查找图像等操作。...如何安装 pyautogui? 在开始使用 pyautogui 之前,我们需要先在我们的 Python 环境中安装它。...在命令行中输入以下命令即可: pip install pyautoguipyautogui 打开记事本,输入文本保存 接下来,我们通过一个简单的例子来展示如何使用 pyautogui。...首先,我们导入 pyautogui 库,并设置失败安全特性,当我们将鼠标移动到屏幕的左上角时,自动化会立即停止: import pyautogui pyautogui.FAILSAFE = True...** 用 pywinauto 来自动化 Windows 记事本 导入模块 在 Python 脚本中,我们需要导入 pywinauto 库。

84140

工作时怎么“偷懒”?交给工作流自动化吧

突然,Lynk软件中的活动符号变黄,这表明你没有工作,也没有参加会议。 这时你爱管闲事的老板走了过来,轻拍你的肩膀。 你很惊讶地抬头,看见老板正瞪着你,因为他有个每时每刻都管理员工的坏习惯。...要是Lynk软件的活动符号没有变黄该有多好? 其实你可以解决这个问题。在谷歌搜索片刻之后,可找到脚本来移动鼠标并开始编写代码,通过每隔几分钟运行一次程序以确保鼠标移动。...自动化工作使用Python的PyAutoGUI模块。要安装PyAutoGUI模块,请运行以下命令: pip install pyautogui Python使用屏幕的坐标系控制并跟踪鼠标。...PyAutoGUI模块提供以下功能: •size():size()函数可让你了解屏幕分辨率。...):PyAutoGUI模块中的moveTo()函数可移动鼠标。

1.8K10

Pywinauto之Windows UI自动化7

回放去实现自动化测试 2、通过坐标定位,点击模拟鼠标和键盘操作 (以上两种操作,均使用python去实现) 三、实现方式 基于python语言有着丰富的第三方库,如:pywinauto、pymouse、pyautogui...、win32、pynput、 lackey等等 其中: pywinauto Pywinauto是基于Python开发的一个库,可用于自动化测试的一个很有用的脚本模块,主要用于操作Windows标准图形界面...安装方式:pip install PyUserInput pyautogui PyAutoGUI是用Python写的一个模块,使用它可以控制鼠标和键盘。...安装方式:pip install pyautogui pywin32 pywin32是一个第三方模块库,主要的作用是方便python开发者快速调用windows API的一个模块库。...同时pywin32也是绝大部分windows上第三方python模块库的前提,例如wmi,如果没有安装pywin32是无法正常使用wmi这个三方模块库的。

2K50

爬虫方案 | 爬取大众点评网评论的几个思路(从小程序端)

然后,我们还要处理一下评论内容当中的表情符号,这里我们导入一个转换的模块,叫import emoji使用当中的这个函数demojize:content = ' '.join(content_text)content...下面我们就请出python库当中的另一个模块pyautogui,让它帮我们去滚动小程序页面,翻页加载。我们的思路是运行以后让鼠标自动跑到小程序界面,然后再滚动向下,进行翻页,一直翻到没有数据为止。...这里我们首先要在小程序上截一个图,让模块在程序运行时比对这个图,找到小程序对应的位置,然后再滚动,滚动的次数我们可以根据评论的最大页数以及每次加载的条数来计算一下,给一个最大的滚动次数。...还可以加一个break条件来终止这个循环,比如滚动到最后有一个,没有更多数据的提示,那我们就可以使用这个来作为循环停止的条件。...i in range(4): # 循环滚动 pyautogui.scroll(-1500) pyautogui.PAUSE = 1 # 暂停1秒 page += 1

4.4K62

Python: pyautogui模块之鼠标控制

pyautogui模块中包含了一些函数,可以模拟鼠标移动、按键和滚动鼠标滚轮。本文对鼠标控制的相关函数进行介绍。...1 确定鼠标位置 1.1 坐标轴系统 pyautogui的鼠标函数使用x,y坐标,原点在屏幕左上角,向右x坐标增加,向下y坐标增加,所有坐标都是正整数,没有负数坐标。...>>> import pyautogui >>> screenWidth, screenHeight = pyautogui.size() # Get the size of the primary monitor...3 控制鼠标交互 3.1 点击鼠标 pyautogui.mouseDown() #按下鼠标按键(左键) pyautogui.mouseUp() #释放鼠标按键(左键) pyautogui.click...pyautogui.rightClick() #单击鼠标右键 pyautogui.middleClick() #单击鼠标中键 3.2 拖动鼠标 pyautogui.dragTo(x,y[,duration

5K20

python 捕捉和模拟鼠标键盘操作

PyAutoGUI有30种缓动/渐变函数,可以通过pyautogui.ease*?查看。...F1…….F12键 ‘volumemute’, ‘volumedown’,‘volumeup’ 有些键盘没有 ‘pause’ PAUSE键 ‘capslock’, ‘numlock’,‘scrolllock...要禁用这个特性,就把FAILSAFE设置成False pag.FAILSAFE = False 通过把pyautogui.PAUSE设置成float或int时间(秒),可以为所有的PyAutoGUI函数增加延迟...except: print('error') finally: output.close() 总体思路就是遍历所有6位数用户名,如果该用户名已经被人注册了,用户名输入框会变成红色提示,如果没有被人注册...最后我跑了一个中午,找到了两个可以使用的数字,第一个不知道因为什么原因已经被人注册了但是误判为没有被注册,但是第二个数字可以使用,于是我的作业就完成了。

3.5K20
领券