PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块

pyautogui 库  2017-10-4

pip install pyautogui

python pip.exe install pyautogui      python3.6下,直接就可以安装了,无须其它依赖

http://blog.csdn.net/astroboythu/article/details/78068070  (阅读)pyautogui库函数的基本介绍,python 捕捉和模拟鼠标键盘操作

https://muxuezi.github.io/posts/doc-pyautogui.html  PyAutoGUI——让所有GUI都自动化,本教程译自大神Al Sweigart的PyAutoGUI项目,Python自动化工具,更适合处理GUI任务。

(鼠标操作的一个很简单的练习)。以下文件是qq超市提升奢华度,往墙上挂装饰物用的。
环境:1920x1080分辨率。把qq超市游戏的flash的最下一行,和浏览器的下边框对齐。游戏里 点“装潢”——》“墙上装饰”——》第五页的“天顶彩灯”,然后就可以运行python,往墙上挂装饰物了。

# -*- coding: utf-8 -*-
#coding=utf-8
import pyautogui as pag
screenWidth, screenHeight = pag.size()
print(screenWidth,screenHeight)
for i in range(60):
print(i)
pag.click(930, 987)
pag.moveTo(930, 770, duration=0.2)
pag.click(930, 770)

我这机子是 win7 64位,python3.6的环境。

本来关于鼠标键盘操作,原先是想用 PyUserInput 的,看了这篇文章 http://blog.csdn.net/shij19/article/details/53046048,说 PyUserInput模块安装前需要安装pywin32和pyHook模块。

直接又装不上,到文中所述url下载.whl后,再安装,又有引用win32的错,反正也搞不清,不清楚版本还是哪里出了问题。不想再费事,于是又另外搜到 pyautogui这个库,一下就装上了,发现还很好用。主要用途是用来做测试的。

2017-10-6更新,增加了随机数因子,以免被当作游戏作弊

import pyautogui as pag
import random
#qq超市提高奢华度
x0 = 930
y0 = 985
for i in range(20):
print(i)
x1 = x0 -5 + random.choice(range(10)) #增加了随机数因子,以免被当作作弊数据
y1 = y0 -250 -5 + random.choice(range(10))
pag.click(x0, y0)
pag.moveTo(x1, y1, duration=0.2)
pag.click(x1, y1)

2019-8-30更新:wow保持挂机,不被暂离掉线:(2个窗口)

隔一段时间,alt+tab切换窗口,按空格蹦一下:

import pyautogui as pag
import time
import random time.sleep(2) def rdm(miao):
return random.random() * miao def tabwin():
time.sleep(60 + rdm(5))
pag.keyDown('alt')
pag.press(['tab'])
pag.keyUp('alt')
time.sleep(3 + rdm(2))
return def run300():
tabwin()
pag.click(640, 540, 1, 0, 'left') #点击屏幕左侧
pag.typewrite(" ") tabwin()
pag.click(1280, 540, 1, 0, 'left') #点击屏幕右侧
pag.typewrite(" ")
return for i in range(360):
print(i, time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
run300()

..

py库: pyautogui (自动测试模块,模拟鼠标、键盘动作)的更多相关文章

  1. 可以用py库: pyautogui (自动测试模块,模拟鼠标、键盘动作)来代替pyuserinput

    PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块 pyUserInput模块安装前需要安装pywin32和pyHook模块.(想要装的看https://www.cnblogs.com/m ...

  2. python模拟鼠标键盘操作 GhostMouse tinytask 调用外部脚本或程序 autopy右键另存为

    0.关键实现:程序窗口前置 python 通过js控制滚动条拉取全文 通过psutil获取pid窗口句柄,通过win32gui使程序窗口前置 通过pyauto实现右键菜单和另存为操作 1.参考 aut ...

  3. Delphi下利用WinIo模拟鼠标键盘详解 有参考价值

    https://blog.csdn.net/fgrass_163/article/details/6365296 Delphi下利用WinIo模拟鼠标键盘详解 2011年04月26日 21:03:00 ...

  4. C#模拟鼠标键盘控制其他窗口(一)

    编写程序模拟鼠标和键盘操作可以方便的实现你需要的功能,而不需要对方程序为你开放接口.比如,操作飞信定时发送短信等.我之前开发过飞信耗子,用的是对飞信协议进行抓包,然后分析协议,进而模拟协议的执行,开发 ...

  5. Linux 模拟 鼠标 键盘 事件

    /************************************************************************ * Linux 模拟 鼠标 键盘 事件 * 说明: ...

  6. 将CodedUI Test 放到控制台程序中,模拟鼠标键盘操作

    CodedUI Test是微软的自动化测试工具,在VS中非常好用.可以用来模拟鼠标点击,键盘输入.但执行的时候必须要用mstest调用,无法传入参数(当然可以写入config文件中,但每次修改十分麻烦 ...

  7. selenium webdriver从安装到使用(python语言),显示等待和隐性等待用法,切换窗口或者frame,弹框处理,下拉菜单处理,模拟鼠标键盘操作等

    selenium的用法 selenium2.0主要包含selenium IDE 和selenium webDriver,IDE有点类似QTP和LoadRunner的录制功能,就是firefox浏览器的 ...

  8. selenium webdriver(4)---模拟鼠标键盘操作

    webdriver提供Actions来模拟鼠标悬浮.拖拽和键盘输入等操作,详细代码见org.openqa.selenium.interactions.Actions.本文通过几个实例来说明Action ...

  9. selenium webdriver模拟鼠标键盘操作

    在测试使用Selenium webdriver测试WEB系统的时候,用到了模拟鼠标.键盘的一些输入操作. 1.鼠标的左键点击.双击.拖拽.右键点击等: 2.键盘的回车.回退.空格.ctrl.alt.s ...

随机推荐

  1. 【spring boot】映射properties文件属性--到Java对象

    描述 将*.properties中的内容映射到java对象中: 主要步骤 添加 @Component 注解: 使用 @PropertySource 注解指定配置文件位置: 使用 @Configurat ...

  2. 【mysql】IP地址整数int和varchar的转换

    mysql中IP地址的存储 IP:如192.168.12.145,在存储时,若是采用varchar进行存储,存在两个主要缺点: 存储空间占用较大: 查询检索较慢: 解决方式: 存储时:将字符串类型的I ...

  3. win server 2003 x64 IIS配置

    新装IIS第一个报错 The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine 原因是 服务器 IIS ...

  4. Hadoop概念学习系列之Hadoop、Spark学习路线(很值得推荐)(十八)

    不多说,直接上干货! 说在前面的话 此笔,对于仅对于Hadoop和Spark初中学者.高手请忽略! 1 Java基础: 视频方面:          推荐<毕向东JAVA基础视频教程>.学 ...

  5. 《Java并发编程实战》笔记-状态依赖方法的标准形式

    void stateDependentMethod() throws InterruptedException { //必须通过一个锁来保护条件谓词 synchronized(lock) { whil ...

  6. PAT 乙级 1077 互评成绩计算 (20)

    在浙大的计算机专业课中,经常有互评分组报告这个环节.一个组上台介绍自己的工作,其他组在台下为其表现评分.最后这个组的互评成绩是这样计算的:所有其他组的评分中,去掉一个最高分和一个最低分,剩下的分数取平 ...

  7. MyBatis #{} 和 ${} 引用值的用法

    1.#{} 引用值的用法 UserMapper配置文件: <select id="queryOne" resultType="cn.tedu.mybatis.bea ...

  8. 廖雪峰Java2面向对象编程-5包和classpath-3作用域

    1.访问权限 Java的类.接口.字段和方法都可以设置访问权限 访问权限是指在一个类的内部,能否引用另一个类以及访问它的字段和方法 访问权限有public.protected.private和pack ...

  9. C语言强化——学生管理系统

    系统模块设计 a.预处理模块 系统在启动时会根据配置文件里的内容去相应文件里去加载账户信息和学生信息. b.登陆模块 输入用户名和密码,输密码的时候用"*" 代表用户当前输入的内容 ...

  10. [UE4]位移和形变 Render Transform

      任何UI控件都有Render Transform属性. 一.Transform,对应游戏场景中的Transform 1.Translation:位置,平移.对应游戏场景的Transform中的Lo ...