pyautogui的一些自动化示例,附代码

news/2024/9/18 5:31:27/ 标签: 自动化, 运维, AI

以下为您提供一些 pyautogui 的自动化示例及代码:

  1. 模拟鼠标点击和移动:
    import pyautogui
    # 获取屏幕的宽度和高度
    screen_width, screen_height = pyautogui.size()
    # 将鼠标移动到屏幕中心
    pyautogui.moveTo(screen_width / 2, screen_height / 2)
    # 在屏幕中心点击鼠标左键
    pyautogui.click(screen_width / 2, screen_height / 2)
    
  2. 模拟键盘输入:
    import pyautogui
    # 模拟键盘输入字符串
    pyautogui.typewrite("Hello, World!", interval=0.25)
    
  3. 屏幕截图:
    import pyautogui
    # 截取整个屏幕
    screenshot = pyautogui.screenshot()
    # 保存截图
    screenshot.save('screenshot.png')
    
  4. 制作垃圾邮件自动化
    import pyautogui as pag
    import time
    from tkinter import Tk
    from tkinter.filedialog import askopenfilename# 提供输入方法
    Tk().withdraw()
    filename = askopenfilename()# 创建延迟调整垃圾邮件的速度
    timeDelay = int(input("If you want a delay, enter the number of seconds for the delay : ").split()(0))
    if timeDelay < 1:timeDelay = 1
    time.sleep(5)# 使用 PyAutoGUI 发送垃圾邮件
    f = open(filename, "r")
    for word in f:time.sleep(timeDelay)pag.typewrite(word)pag.press("enter")
    
  5. 向下滚动条到底:
    import pyautogui
    import time# 等待 1 秒,确保所有窗口都已加载完成
    time.sleep(1)
    # 模拟按下键盘的"Page Down"键,向下滚动屏幕内容
    pyautogui.scrollDown()
    
  6. 识别图像并点击:
    import pyautogui
    # 查找图像的位置
    image_location = pyautogui.locateOnScreen('image.png')
    # 如果图像存在,则点击该位置
    if image_location:x, y = pyautogui.center(image_location)pyautogui.click(x, y)
    

以上示例展示了 pyautogui 在不同场景下的自动化操作及相应的代码实现。

pyautogui模拟鼠标操作的代码示例

在 Python 中,使用 pyautogui 库进行模拟鼠标操作非常方便。以下是一些常见的模拟鼠标操作的代码示例:

import pyautogui
import time# 移动鼠标到指定位置
pyautogui.moveTo(100, 100, duration=1)  # 用 1 秒时间移动到坐标 (100, 100)# 单击鼠标左键
pyautogui.click(200, 200)  # 在坐标 (200, 200) 处单击左键# 双击鼠标左键
pyautogui.doubleClick(300, 300)  # 在坐标 (300, 300) 处双击左键# 拖动鼠标
pyautogui.dragTo(400, 400, duration=2)  # 用 2 秒时间将鼠标从当前位置拖动到 (400, 400)

pyautogui模拟键盘输入的代码示例

import pyautogui# 模拟输入单个字符
pyautogui.press('a')# 模拟输入字符串
pyautogui.typewrite('Hello, World!')# 模拟输入组合键
pyautogui.hotkey('ctrl', 'c')

pyautogui屏幕截图的代码示例

import pyautogui# 截取整个屏幕
screenshot = pyautogui.screenshot()
screenshot.save('screenshot.png')# 截取指定区域
x = 100
y = 100
width = 500
height = 500
screenshot = pyautogui.screenshot(region=(x, y, width, height))
screenshot.save('region_screenshot.png')

pyautogui制作垃圾邮件自动化的代码示例

import pyautogui as pag
import time
from tkinter import Tk
from tkinter.filedialog import askopenfilename# 提供输入方法
Tk().withdraw()
filename = askopenfilename()# 创建延迟调整垃圾邮件的速度
timeDelay = int(input("If you want a delay, enter the number of seconds for the delay : ").split()(0))
if timeDelay < 1:timeDelay = 1
time.sleep(5)# 使用 PyAutoGUI 发送垃圾邮件
msg = input("Enter the message: ")
n = input("How many times?: ")
for i in range(0, int(n)):pyautogui.typewrite(msg)

pyautogui滚动条操作的代码示例

import pyautogui# 向上滚动一次
pyautogui.scroll(1)# 向下滚动一次
pyautogui.scroll(-1)

pyautogui识别图像并点击的代码示例

import pyautogui
import cv2# 加载待识别图像
button_img = cv2.imread('button.png')# 在屏幕上查找图像
button_location = pyautogui.locateOnScreen(button_img, confidence=0.8)# 如果找到图像,点击其中心
if button_location is not None:button_x, button_y = pyautogui.center(button_location)pyautogui.click(button_x, button_y)
else:print('未找到按钮图像')

以上就是关于 pyautogui 的一些自动化示例代码,通过这些代码可以实现各种自动化操作,为工作和生活带来便利。但在实际应用中,请确保您的操作符合法律法规和道德规范,并注意不要对他人造成不良影响。


http://www.ppmy.cn/news/1518854.html

相关文章

Linux的常见指令

前言 Hello,今天我们继续学习Liunx&#xff0c;上期我们简单了解了Linux的基本用处&#xff0c;并了解了Linux的重要性&#xff0c;今天我们就继续更加深入的学习Linux&#xff0c;进行指令方面的学习&#xff0c;我们可以通过先学习简单的基础命令来学习Linux&#xff0c;并在…

css设置让整个盒子的内容渐变透明(非颜色渐变透明)

css设置让整个盒子的内容渐变透明&#xff08;非颜色渐变透明&#xff09; 效果核心css代码 效果 核心css代码 /* 设置蒙版上下左右渐变显示 */ mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 10%, rgba(0, 0, 0, 1) 90%, rgba(0, 0, 0, 0) 1…

LuaJit分析(一)LuaJit交叉编译

​​​​​​Android 使用ndk版本 r16b 在luajit2.1.0-beta3目录下创建一个脚本文件&#xff0c;armv7编译代码如下&#xff1a; make clean NDKE:/android-ndk-r16b #ndk路径 NDKABI21 NDKTRIPLEarm-linux-androideabi NDKVER$NDK/toolchains/$NDKTRIPLE-4.9 NDKP$NDKVER/…

QT基础之【模块】

QT基础之【模块】 写在前面版本信息内容全部模块QT基本模块QT附加模块增值模块技术预览模块QT工具 补充模块路径网络资料简要描述 摘要&#xff1a; 1.本文介绍了QT5.12.9的模块&#xff0c;主要核心内容来源于帮助文档&#xff0c;少量整理网络中的资料 2.分析查看安装中径中的…

代码随想录——回文子串(Leetcode 647)

题目链接 我的题解&#xff08;双指针&#xff09; 思路&#xff1a; 当然&#xff0c;以下是对您提供的代码的解释&#xff1a; class Solution {public int countSubstrings(String s) {// 初始化回文子字符串的数量int count 0;// 遍历字符串的每个字符&#xff0c;使用…

嵌入式Linux C应用编程指南-进程、线程(速记版)

第九章 进程 9.1 进程与程序 9.1.1 main()函数由谁调用&#xff1f; C 语言程序总是从 main 函数开始执行&#xff0c;main()函数的原型是&#xff1a; int main(void) 或 int main(int argc, char *argv[])。 操作系统下的应用程序在运行 main()函数之前需要先执行一段引导代…

深入解析HarmonyOS Image组件的使用与优化

在现代移动应用开发中&#xff0c;图像处理是一个至关重要的部分。HarmonyOS 提供了功能强大的图像组件&#xff0c;允许开发者从多种来源显示图像&#xff0c;如本地资源、网络资源、资源文件、媒体库和 Base64图像编码。本篇博客将深入探讨如何接地使用图像组件&#xff0c;并…

Golang | Leetcode Golang题解之第385题迷你语法分析器

题目&#xff1a; 题解&#xff1a; func deserialize(s string) *NestedInteger {index : 0var dfs func() *NestedIntegerdfs func() *NestedInteger {ni : &NestedInteger{}if s[index] [ {indexfor s[index] ! ] {ni.Add(*dfs())if s[index] , {index}}indexreturn…

C/C++二维码生成库qrencode编译与使用

1 qrencode介绍 qrencode 是一个用于生成 QR 码&#xff08;Quick Response Code&#xff09;的工具和库。QR 码是一种矩阵条形码或二维条形码&#xff0c;能够在水平和垂直方向上存储信息。qrencode 支持多种编码方式&#xff0c;并能够生成不同复杂度和错误校正级别的 QR 码…

R语言统计分析——单因素协方差分析

参考资料&#xff1a;R语言实战【第2版】 单因素协方差分析&#xff08;ANCONA&#xff09;扩展了单因素方差分析&#xff08;ANOVA&#xff09;&#xff0c;包含一个或多个定量的协变量。下面使用multcomp包中的litter数据集进行操作&#xff1a; # 加载数据集 data(litter,p…

web笔记:JSP基础

一、什么是JSP&#xff1f; 建立在Servlet规范之上的动态网页开发技术。在JSP文件中&#xff0c;HTML代码与Java代码共同存在。 HTML代码用来实现网页中静态内容的显示。Java代码用来实现网页中动态内容的显示。 二、JSP的运行原理 由JSP引擎(JSP容器)将jsp转换为Servlet 当客…

【生成模型系列(初级)】自编码器——深度学习的数据压缩与重构

【通俗理解】自编码器——深度学习的数据压缩与重构 第一节&#xff1a;自编码器的类比与核心概念 1.1 自编码器的类比 你可以把自编码器想象成一个“智能压缩机”&#xff0c;它能够把输入的数据&#xff08;比如图片&#xff09;压缩成一个更小的表示&#xff08;编码&#…

React 入门第七天:探索状态管理与Context API

在React学习的第七天&#xff0c;我深入了解了React的状态管理机制&#xff0c;特别是如何通过Context API来实现跨组件的状态共享。React的状态管理是组件交互的核心&#xff0c;而Context API则为全局状态的共享提供了一个简洁而强大的解决方案。 1. React 中的状态管理 Re…

在Ubuntu 16.04上安装MongoDB的方法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 简介 MongoDB 是一款常用于现代 Web 应用程序的免费开源 NoSQL 文档数据库。本教程将帮助您在服务器上为生产应用程序环境设置 MongoDB…

Python画笔案例-023 绘制一朵小花

1、绘制一朵小花 通过 python 的turtle 库绘制一朵小花的图案&#xff0c;如下图&#xff1a; 2、实现代码 绘制一朵小花&#xff0c;以下为实现代码&#xff1a; """一朵小花.py """ import turtle as t # 导入海龟模块做为tt.bgcolor…

Electron快速上手

什么是Electron 一款应用广泛的跨平台的桌面应用开发框架。Electron的本质是结合了 Chromium 与Node.js。使用HTML、CSS、JS 等Web技术构建桌面应用程序。 .vue,.tsx,.less,.ts也可以使用 Electron 流程模型 主进程是纯node环境&#xff0c;可以访问__dirname,fs模块等&#…

《C++打造高效网络爬虫:突破数据壁垒》

在当今信息爆炸的时代&#xff0c;网络爬虫成为了获取大量数据的重要工具。而 C作为一种高效、强大的编程语言&#xff0c;在实现高效网络爬虫方面具有独特的优势。 首先&#xff0c;C的高效性能是实现高效网络爬虫的关键。与其他编程语言相比&#xff0c;C在运行速度和内存管…

进程间的通信(无名管道)

进程间通信 IPC InterProcess Communication 1.进程间通信方式 1.早期的进程间通信&#xff1a; 无名管道(pipe)、有名管道(fifo)、信号(signal) 2.system V PIC&#xff1a; 共享内存(share memory)、信号灯集(semaphore)、消息队列(message queue) 3.BSD: 套接字(socket) 2.无…

高防服务器中的流量清洗是什么意思?

高防服务器能够为企业防御一定的网络攻击&#xff0c;是网络游戏行业经常会选择的一款服务器类型&#xff0c;其中高防服务器的流量清洗则是指对服务器所接收的流量进行实时监测、识别和过滤&#xff0c;将恶意流量与攻击流量进行清除&#xff0c;保证网络能够正常运行。 接下来…

笔记 12 : 彭老师课本第 6 章, PWM ,代码实践

&#xff08;85&#xff09; 驱动写多了&#xff0c;会发现&#xff0c;首先就是硬件的初始化&#xff0c;配置硬件。 &#xff08;86&#xff09;查看源代码组织&#xff1a; &#xff08;87&#xff09; 编译过程不变&#xff1a; &#xff08;88&#xff09; 运行同以前的步…