Python(Pyautogui 模块)
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 模块)的更多相关文章
- pyautogui 模块学习
在日常实施中,我们用控件对大部分的网页和客户端都能进行拾取操作.但是仍有一小部分的应用无法进行操作.这里我常用到 pyautogui 这个模块.下面做个分享. Python 的 pyautogui 模 ...
- 浅谈pyautogui模块
pyautogui模块 PyAutoGUI--让所有GUI都自动化 安装代码: pip install pyautogui 目的 PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以 ...
- Python标准模块--threading
1 模块简介 threading模块在Python1.5.2中首次引入,是低级thread模块的一个增强版.threading模块让线程使用起来更加容易,允许程序同一时间运行多个操作. 不过请注意,P ...
- Python的模块引用和查找路径
模块间相互独立相互引用是任何一种编程语言的基础能力.对于“模块”这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义.对于编译型的语言,比如C#中 ...
- Python Logging模块的简单使用
前言 日志是非常重要的,最近有接触到这个,所以系统的看一下Python这个模块的用法.本文即为Logging模块的用法简介,主要参考文章为Python官方文档,链接见参考列表. 另外,Python的H ...
- Python标准模块--logging
1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...
- python基础-模块
一.模块介绍 ...
- python 安装模块
python安装模块的方法很多,在此仅介绍一种,不需要安装其他附带的pip等,python安装完之后,配置环境变量,我由于中英文分号原因,环境变量始终没能配置成功汗. 1:下载模块的压缩文件解压到任意 ...
- python Queue模块
先看一个很简单的例子 #coding:utf8 import Queue #queue是队列的意思 q=Queue.Queue(maxsize=10) #创建一个queue对象 for i in ra ...
随机推荐
- wireshark抓包实战(六),过滤器
目录 一.抓包过滤器 1.语法来源 2.语法 二.显示过滤器 1.语法来源 2.关键要素 wireshark中,过滤器有两种,一种是抓包过滤器,一种是显示过滤器! 抓包过滤器适合大网络环境,配置与抓包 ...
- java 字符串截取 - 最后带上mysql字符串截取比较
Java中的substring()方法有两个方法的重载,一个带一个参数的,一个带两个参数的. 第一种写法: substring(n);//从索引是n的字符开始截取,条件(n>=0,n<字符 ...
- 阿里Canal框架数据库同步-实战教程
一.Canal简介: canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 二.背景介绍: ...
- Django中HttpRequest常用参数介绍
HttpRequest对象常用参数介绍,以及前端不同请求方式(http方法/Content-Type类型)对应的参数获取方式. 一.HttpRequest对象 django请求对象的详细参数以及实现方 ...
- 15分钟从零开始搭建支持10w+用户的生产环境(二)
上一篇文章,把这个架构的起因,和操作系统的选择进行了详细说明. 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(一) 二.数据库的选择 对于一个10W+用户的系统,数据库选择很重要. 一 ...
- 2020i春秋新春战疫
简单的招聘系统 登陆这里就可以注入 查询这里也可以注入 从登陆这里注入把 爆破数据库名 爆破表名 列名 flag 就很奇怪跑出来的东西 重开容器跑一遍列,估计是flaaag.后面可能是发生了502 再 ...
- HTTP Request和Response
一.Servlet 1:实现Servlet接口 servlet生命周期: init方法:tomcat启动时 调用此方法 service方法:访问servlet时默认执行此方法 destroy方法:to ...
- Python 实用冷门知识整理
1.print 打印带有颜色的信息 大家知道 Python 中的信息打印函数 print,一般我们会使用它打印一些东西,作为一个简单调试. 但是你知道么,这个 Print 打印出来的字体颜色是可以设置 ...
- 2019-2020-1 20199328《Linux内核原理与分析》第七周作业
分析Linux内核创建一个新进程的过程 2019/10/28 18:34:58 笔记部分 首先是查看进程描述符(用来描述进程,其代码比较庞大)的一些内容 系统调用回顾 fork.vfork.clone ...
- [Inno Setup] 安装完成后调用函数
如果使用了通配符,每拷贝一个文件,函数都会被调用一次. Source: "path\test.exe"; DestDir: {app}; AfterInstall: LoadPer ...