1、安装 pyautogui 模块

  • pip install pyautogui

2、pyautogui 模块相关操作

  • 鼠标操作
# 获取屏幕宽和高
w,h = pyautogui.size() # 在坐标 (1136,706) 位置处使用鼠标左键;默认从鼠标当前坐标位置;button 默认为 "left",有三个可选值,分别为 "left","middle","right"
pyautogui.click(1136,706,button="left")
pyautogui.leftClick(x,y) # 在 (300,400) 坐标处左键双击
pyautogui.click(300, 400,clicks=2, button='left',interval=0.25)
# 在 (x,y) 坐标处双击操作;button 默认为 "left",有三个可选值,分别为 "left","middle","right"
pyautogui.doubleClick(x,y,button="left",duration=0.25) # 在坐标 (1136,706) 位置处使用鼠标右键
pyautogui.click(1136,706,button="right")
pyautogui.rightClick(x,y) # 在坐标 (x,y) 位置处使用鼠标中键
pyautogui.middleClick(x,y) # 按下某个键
pyautogui.mouseDown() # 鼠标拖动到坐标 (1566,706) 位置处
pyautogui.moveTo(1566,706,duration=0.2) # 松开某个键
pyautogui.mouseUp()
  • 滚动条操作
# 滚动条操作,它只接受一个整数,值为正则往上滚,值为负则往下滚
pyautogui.scroll(-200)
pyautogui.scroll(200)
  • 输入操作
# 选择输入框
pyautogui.click(624,391) # 往输入框输入内容
pyautogui.typewrite("")
  • 键盘操作
# 删除一个字符
pyautogui.typewrite(["backspace"]) # 执行 enter 回车操作
pyautogui.typewrite(["enter"]) # 先在当前位置光标向左一个字符,接着删除一个字符,再输入 a,再执行 enter 操作;延时 2 秒
pyautogui.typewrite(["left","backspace","a","enter"],"")

"enter"(或 "return" 或 "\n")

回车

"esc"

ESC键

"shiftleft", "shiftright"

左右SHIFT键

"altleft", "altright"

左右ALT键

"ctrlleft", "ctrlright"

左右CTRL键

"tab" ("\t")

TAB键

"backspace", "delete"

BACKSPACE 、DELETE键

"pageup", "pagedown"

PAGE UP 和 PAGE DOWN键

"home", "end"

HOME 和 END键

"up", "down", "left", "right"

箭头键

"f1", "f2", "f3"….

F1…….F12键

"volumemute", "volumedown", "volumeup"

有些键盘没有

"pause"

PAUSE键

"capslock", "numlock", "scrolllock"

CAPS LOCK, NUM LOCK, 和 SCROLLLOCK 键

"insert"

INS或INSERT键

"printscreen"

PRTSC 或 PRINT SCREEN键

"winleft", "winright"

Win键

"command"

Mac OS X command键

  • 组合键 / 热键操作
#使用组合键
# alt + a 键进行组合使用
pyautogui.keyDown('alt')
pyautogui.press('a')
pyautogui.keyUp('alt')
# 使用热键
# 调起 qq
pyautogui.hotkey("ctrl","alt","z") #调起微信
pyautogui.hotkey("alt","d")

3、操作实例

  • 处理验证滑块

import pyautogui
from selenium import webdriver
import time
dr = webdriver.Chrome()
dr.get("https://shopcs.yunyoute.com/login")
dr.maximize_window()
dr.implicitly_wait(10)
time.sleep(2)
pyautogui.click(1136,706,button="left") # 在坐标(1136,706)位置处进行鼠标左键
pyautogui.mouseDown() # 按下鼠标键
pyautogui.moveTo(1566,706,duration=0.2) # 鼠标拖动到坐标(1566,706)位置处
pyautogui.mouseUp() # 松开鼠标
  • 将滑动滑块方法封装成功公共方法
"""
文件 Left_slide.py
"""
import pyautogui def left():
w,h = pyautogui.size() # 获取屏幕宽 w 和高 h
x1 = w * 0.59
x2 = w * 0.81
y1 = h * 0.65
pyautogui.click(x1,y1,button="left") # 在坐标(1136,706)位置处进行鼠标左键
pyautogui.mouseDown() # 按下鼠标键
pyautogui.moveTo(x2,y1,duration=0.2) # 鼠标拖动到坐标(1566,706)位置处
pyautogui.mouseUp() # 松开鼠标 """
文件 case.py
"""
from selenium import webdriver
from public.Left_slide import left
import time
dr = webdriver.Chrome()
dr.get("https://shopcs.yunyoute.com/login")
dr.maximize_window()
dr.implicitly_wait(10)
time.sleep(2)
left() # 调用左滑方法

Python(Pyautogui 模块)的更多相关文章

  1. pyautogui 模块学习

    在日常实施中,我们用控件对大部分的网页和客户端都能进行拾取操作.但是仍有一小部分的应用无法进行操作.这里我常用到 pyautogui 这个模块.下面做个分享. Python 的 pyautogui 模 ...

  2. 浅谈pyautogui模块

    pyautogui模块 PyAutoGUI--让所有GUI都自动化 安装代码: pip install pyautogui 目的 PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以 ...

  3. Python标准模块--threading

    1 模块简介 threading模块在Python1.5.2中首次引入,是低级thread模块的一个增强版.threading模块让线程使用起来更加容易,允许程序同一时间运行多个操作. 不过请注意,P ...

  4. Python的模块引用和查找路径

    模块间相互独立相互引用是任何一种编程语言的基础能力.对于“模块”这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义.对于编译型的语言,比如C#中 ...

  5. Python Logging模块的简单使用

    前言 日志是非常重要的,最近有接触到这个,所以系统的看一下Python这个模块的用法.本文即为Logging模块的用法简介,主要参考文章为Python官方文档,链接见参考列表. 另外,Python的H ...

  6. Python标准模块--logging

    1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...

  7. python基础-模块

    一.模块介绍                                                                                              ...

  8. python 安装模块

    python安装模块的方法很多,在此仅介绍一种,不需要安装其他附带的pip等,python安装完之后,配置环境变量,我由于中英文分号原因,环境变量始终没能配置成功汗. 1:下载模块的压缩文件解压到任意 ...

  9. python Queue模块

    先看一个很简单的例子 #coding:utf8 import Queue #queue是队列的意思 q=Queue.Queue(maxsize=10) #创建一个queue对象 for i in ra ...

随机推荐

  1. wireshark抓包实战(六),过滤器

    目录 一.抓包过滤器 1.语法来源 2.语法 二.显示过滤器 1.语法来源 2.关键要素 wireshark中,过滤器有两种,一种是抓包过滤器,一种是显示过滤器! 抓包过滤器适合大网络环境,配置与抓包 ...

  2. java 字符串截取 - 最后带上mysql字符串截取比较

    Java中的substring()方法有两个方法的重载,一个带一个参数的,一个带两个参数的. 第一种写法: substring(n);//从索引是n的字符开始截取,条件(n>=0,n<字符 ...

  3. 阿里Canal框架数据库同步-实战教程

    一.Canal简介: canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 二.背景介绍: ...

  4. Django中HttpRequest常用参数介绍

    HttpRequest对象常用参数介绍,以及前端不同请求方式(http方法/Content-Type类型)对应的参数获取方式. 一.HttpRequest对象 django请求对象的详细参数以及实现方 ...

  5. 15分钟从零开始搭建支持10w+用户的生产环境(二)

    上一篇文章,把这个架构的起因,和操作系统的选择进行了详细说明. 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(一)   二.数据库的选择 对于一个10W+用户的系统,数据库选择很重要. 一 ...

  6. 2020i春秋新春战疫

    简单的招聘系统 登陆这里就可以注入 查询这里也可以注入 从登陆这里注入把 爆破数据库名 爆破表名 列名 flag 就很奇怪跑出来的东西 重开容器跑一遍列,估计是flaaag.后面可能是发生了502 再 ...

  7. HTTP Request和Response

    一.Servlet 1:实现Servlet接口 servlet生命周期: init方法:tomcat启动时 调用此方法 service方法:访问servlet时默认执行此方法 destroy方法:to ...

  8. Python 实用冷门知识整理

    1.print 打印带有颜色的信息 大家知道 Python 中的信息打印函数 print,一般我们会使用它打印一些东西,作为一个简单调试. 但是你知道么,这个 Print 打印出来的字体颜色是可以设置 ...

  9. 2019-2020-1 20199328《Linux内核原理与分析》第七周作业

    分析Linux内核创建一个新进程的过程 2019/10/28 18:34:58 笔记部分 首先是查看进程描述符(用来描述进程,其代码比较庞大)的一些内容 系统调用回顾 fork.vfork.clone ...

  10. [Inno Setup] 安装完成后调用函数

    如果使用了通配符,每拷贝一个文件,函数都会被调用一次. Source: "path\test.exe"; DestDir: {app}; AfterInstall: LoadPer ...