python办公自动化:让PyAutoGUI来帮你干活---实践版

python办公自动化:让PyAutoGUI来帮你干活---实践版_第1张图片
本文以具体的例子来在具体应用里用pyautogui来进行自动化操作,包括键盘,鼠标等移动,点击,自动抓图等。

  • PyAutoGUI库在各种操作系统上自由控制鼠标和键盘行为。
  1. 安装PyAutoGUI

  2. 获取鼠标光标的当前位置和显示器的大小

  3. 移动并单击鼠标

  4. 鼠标相对移动和双击

  5. 拖动鼠标

  6. 输入字符

  7. 截取屏幕截图

  8. 用图像定位鼠标

  9. 查找图像区域

  10. 获得图像区域的中心

  11. 点击

  12. 关于异常处理

安装PyAutoGUI

pip install pyautogui
conda install -c conda-forge pyautogui
  • 首先,在命令提示符下继续从pip或conda安装。

获取鼠标光标的当前位置和显示器的大小

import pyautogui 
print(pyautogui.position()) 
print(pyautogui.size())
  • position()函数以(x,y)元组的形式返回鼠标光标的当前位置。

  • size()函数以(width,height)元组的形式返回当前主监视器的大小。

移动并单击鼠标

import pyautogui 
pyautogui.moveTo(200, 200) pyautogui.click()
  • 使用moveTo()将鼠标光标移动到x = 200,y = 200,然后单击鼠标单击()一次。
import pyautogui 
pyautogui.click(200, 200)
  • 要同时执行moveTo()和click(),可以将x,y位置放在click()中。
import pyautogui 
pyautogui.click(200, 200, button='right')
  • 使用button关键字选择要单击的鼠标。您可以设置"左",“右"和"中间”。
import pyautogui 
pyautogui.click(200, 200, clicks=2, interval=0.5)
  • clicks关键字设置了点击次数interval关键字设置了点击之间的时间间隔。

鼠标相对移动和双击

import pyautogui 
pyautogui.moveRel(0, 10) 
pyautogui.doubleClick()
  • 使用moveRel()将光标移动到当前位置x = 0,y = 10,然后单击鼠标一次。

拖动鼠标

import pyautogui 
pyautogui.dragTo(300, 300, button='left') 
pyautogui.dragTo(400, 400, 2, button='left') 
pyautogui.dragRel(30, 0, 2, button='right')
  • 使用dragTo(),将鼠标左键拖动到x = 300,y = 300的位置。

  • 如果输入第三个参数的值,请设置拖动时间。在当前光标位置,按住左按钮2秒,x = 400,y = 400并拖动。

  • 使用dragRel(),可以进行相对移动。右键单击并在x = 30处保持2秒,在当前位置y = 0。

  • button关键字可以设置为"left",“right"或"middle”。

输入字符

import pyautogui 
pyautogui.click(500, 500) 
pyautogui.typewrite('Hello world!', interval=0.1)
  • 将光标移动到x = 500,y = 500,在鼠标上单击一次并键入"Hello world!"使用typewrite()函数。

  • 在这种情况下,将每种类型之间的时间间隔设置为0.1秒(间隔= 0.1)。

截取屏幕截图

import pyautogui 
im1 = pyautogui.screenshot() 
im2 = pyautogui.screenshot('my_screenshot.png')
 im3 = pyautogui.screenshot('my_region.png', region=(0, 0, 300, 300))
  • 调用screenshot()返回屏幕截图图像对象(im1)。

  • 输入文件名(‘my_screenshot.png’)将屏幕截图图像保存为文件。

  • 如果该区域被设置为region =(0,0,300,300),则从x = 0,y = 0到x = 300并且y = 300的矩形区域被保存为图像文件。

用图像定位鼠标

  • 由于环境总是略有不同,因此将鼠标放在屏幕上的某个位置可能会很棘手。

  • 在这种情况下,如果屏幕上有特定区域的图像文件,则可以找到并单击该区域。

  • 无论计算器在哪里,总是会尝试点击相同的按钮,如()。

python办公自动化:让PyAutoGUI来帮你干活---实践版_第2张图片

  • 首先,捕获计算器的特定区域并将其保存为文件夹中的"five.PNG"文件,如下所示。

查找图像区域

import pyautogui 
five_btn = pyautogui.locateOnScreen('five.PNG') 
print(five_btn)
  • locateOnScreen() haejumyeon设置图像(“five.PNG”),区域类型,元组上的水平和垂直位置和区域的大小在左边找到在屏幕上的匹配如下((左,上,宽度,高度) )输出到。

  • 如果找不到该区域,则返回None。

(1443, 652, 38, 47)

获得图像区域的中心

import pyautogui

five_btn = pyautogui.locateOnScreen('five.PNG') 
center = pyautogui.center(five_btn) print(center)
  • 使用center()函数,您可以以元组的形式获得区域的中心(您单击的点)。

  • 输出中心时(1462,675)输出。

点击

import pyautogui center = pyautogui.locateCenterOnScreen('five.PNG') pyautogui.click(center)
  • 查找图像区域和查找中点的更简单方法是使用locateCenterOnScreen()函数。

  • 通过单击(中心)单击计算器上5按钮的中心,如下所示。

  • 即使计算器的位置在屏幕上发生变化,您也可以始终单击相同的位置。

  • 1920×1080屏幕,点击大约需要1-2秒,因此可能难以应用于游戏,但它可以在大多数应用程序中使用。

python办公自动化:让PyAutoGUI来帮你干活---实践版_第3张图片

关于异常处理

  • 如果代码编程不正确,则可能难以控制鼠标和键盘。有一种防范这种情况的保障措施。

  • 如果鼠标光标移动到屏幕的左上角(x = 0,y = 0),则激活安全设备并终止程序。

  • 如果您不想使用这些安全设备,请按以下步骤进行设置。

import pyautogui pyautogui.FAILSAFE = False
  • 通过设置pyautogui.PAUSE的值,所有PyAutoGUI函数都可能有延迟,如下所示。
import pyautogui pyautogui.PAUSE = 2.5 pyautogui.moveTo(200, 200) 
pyautogui.click()
  • moveTo()函数后延迟2.5秒,click()函数后延迟2.5秒。

  • pyautogui.PAUSE的默认值为0.1秒。

学用结合,知行合一,大家感觉如何?

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

你可能感兴趣的:(python,爬虫,人工智能)