聊城制作手机网站,ui培训班出来能找到工作吗,wordpress地址,揭阳网站建设工作在这篇文章中#xff0c;我们将介绍一些用Python实现机器人过程自动化的包。机器人流程自动化#xff08;Robotic process automation#xff0c;简称RPA#xff09;是指将鼠标点击和键盘按压自动化的过程#xff0c;即模拟人类用户的操作。RPA用于各种应用程序#xff0… 在这篇文章中我们将介绍一些用Python实现机器人过程自动化的包。机器人流程自动化Robotic process automation简称RPA是指将鼠标点击和键盘按压自动化的过程即模拟人类用户的操作。RPA用于各种应用程序包括数据输入、会计、财务等。我们将介绍pynput、pyautogui和pywinauto。这三个包中的每一个都可以作为构建自己的RPA应用程序以及构建UI测试应用程序的起点。 pynput
我们要讨论的第一个包是pynput。pynput的优点之一是它在Windows和macOS上都可以工作。另一个不错的功能是它具有监视键盘和鼠标输入的功能。让我们开始使用pynput使用pip安装它 pip install pynput安装好之后就可以开始导入Controller和Button类了。然后我们将创建Controller类的一个实例我们将其称为mouse。这将模拟您的计算机的鼠标让您以编程方式点击按钮和移动鼠标在屏幕上。
from pynput.mouse import Button, Controllermouse Controller()接下来让我们看几个简单的命令。要右击或左击我们可以使用上面导入的Button类。
# left-click
mouse.press(Button.left)# right-click
mouse.press(Button.right)要双击您只需要添加数字2作为第二个参数。 mouse.press(Button.left, 2)我们还可以使用move方法将鼠标指针移动到不同的位置。
mouse.move(50, -50)mouse.move(100, -200)Pynput也可以控制键盘。为此我们需要导入Key类
from pynput.keyboard import Key要创建键盘类型可以使用适当命名的键盘。类型的方法。
keyboard.type(this is a test)如上所述pynput还可以监视鼠标移动和键盘按压。要了解有关该功能和输出的更多信息请查看此链接。
pyautogui
也许最常见的模拟鼠标点击和键盘输入的包是pyautogui库。pyautogui适用于Windows、Linux和macOS。如果你没有安装它你可以使用pip安装它 pip install pyautoguiPyautogui也很容易使用。例如如果你想模拟键入一串文本只需使用typewrite方法 pyautogui.typewrite(test pyautogui!)要左键单击鼠标可以使用click方法。要右键单击可以使用rightClick方法。
# left-click
pyautogui.click(100, 200)# right-click
pyautogui.rightClick(100, 200)搜索屏幕图像
pyautogui最酷的功能之一是它可以在计算机屏幕上搜索图像。这是非常有用的如果你需要找到一个特定的按钮点击。您可以通过在locateOnScreen方法中输入图像文件名来搜索图像。该函数返回topleft坐标以及已识别图像的高度和宽度。
location pyautogui.locateOnScreen(random_image.png)为了得到识别图像的中心使用中心法。然后您可以使用click方法单击已识别图像的中心-在本例中是屏幕上的按钮。
center pyautogui.center(location)pyautogui.click(center)有时在屏幕上可能找不到图像。在这种情况下您可以向locateOnScreen添加confidence参数为Python提供识别图像的置信度。 pyautogui.locateOnScreen(random_image.png, confidence 0.95)截屏
您可以使用截图方法在pyautogui中截取屏幕截图。传递一个文件名将把屏幕截图保存到该文件。
s pyautogui.screenshot(sample_screenshot.png)也可以截取特定区域的截图而不是全屏
pyautogui.screenshot(region c(0, 0, 100, 200))你也可以参考上篇文章了解更多特性。
pywinauto
在Windows上我们可以研究的另一个选项是pywinauto库。这个库的主要缺点是它不能在macOS或Linux上工作。不过它也为Windows用户提供了一些不错的优势。首先它的语法是面向对象的——它被设计得更加python化。其次由于它的设计库可以更容易地执行某些任务如单击特定按钮或查找应用程序中的菜单项。
例如让我们从启动记事本开始输入一些文本并保存文件。我们可以使用下面的代码片段来做到这一点。在这里我们通过使用Application类启动Notepad。然后我们引用我们刚刚打开的记事本文件“UnitledNotepad”。我们可以使用编辑。Type_keys开始输入文本。
from pywinauto.application import Applicationapp Application(backenduia).start(notepad.exe)
app.UntitledNotepad.Edit.type_keys(Starting notepad...)
app.UntitledNotepad.menu_select(File-SaveAs)
sub_appapp.UntitledNotepad.child_window(title_re Save As)
sub_app.FileNameCombo.type_keys(test_file.txt)
sub_app.Save.click()通过查看官方文档了解更多关于pywinauto的信息。
最后总结
本文介绍了用Python实现机器人过程自动化的三个包方便读者选择、对比学习。