使用python自动玩游戏
文章目录
- 怎么玩?
- 一、安装依赖
- 二、使用步骤
- 1.准备工作
- 获取坐标工具类
- 2.控制鼠标移动
- 3.控制键盘输入
- 3.控制鼠标点击
- 4.键盘间隔
- 5.延迟
- 6.图片比对
- 7.周末判断
- 8.定时关机
- 9.滑动鼠标轮
- 10.键盘组合键
- 11.创建定时任务
- 总结
怎么玩?
通过python写出你想要的功能,这篇文件我主要讲述如何写,其中的一些功能点,只教方法。
一、安装依赖
1.下载python并配置环境变量,其他博文有详细,这里不细说。
2.下载编辑工具,我使用PyCharm,你们可以用其他的一样
3.命令行输出 pip install pyautogui
下载模拟鼠标键盘的依赖
可能会提示缺少其他相关依赖,使用pip install 命令安装对应提示出来的某个文件,一般可以解决。
二、使用步骤
1.准备工作
先新建一个py文件,引入依赖:
import datetime
import aircv as ac
import time
import pyautogui as p
获取坐标工具类
这里提供一个过去坐标的工具类,大家可以通过这个工具获取到想要位置的坐标
import pyautogui as pclass main:def __init__(self):last_pos= p.position()try:while True:new_pos=p.position()if last_pos!=new_pos:print(new_pos)last_pos=new_posexcept KeyboardInterrupt:print("\nExit.")process = main()
2.控制鼠标移动
代码如下:
#x y 是坐标,以左上角0 0为准,duration=0.3是需要花多久移动到目标位置
p.moveTo(x, y, duration=0.3)
3.控制键盘输入
代码如下:
#括号里的是对应的键盘按键
p.press('f1')
3.控制鼠标点击
代码如下:
#鼠标左键单击
p.click()
#鼠标左键双击
p.doubleClick()
#鼠标左键双击
p.doubleClick()
#鼠标右键单击
p.rightClick()
4.键盘间隔
#0.3是间隔的多长时间
p.PAUSE = 0.3
5.延迟
此类代码中延时非常重要
#5指休眠时间,单位为秒
time.sleep(5)
6.图片比对
有时候一个位置不是固定的,往往需要通过对比来判断是不是进入到了某一个地方
首先先准备一张我们需要比对的图片。这里取名aa
#截取图片bbdef getSd(self):#region表示需要在屏幕中截取的位置,左上角和右下角的x,y坐标img = p.screenshot(region=[944, 194, 1028, 252])#保存到本地img.save("./bb.png")return None
#匹配两张图片以0.7的相似度,如果匹配不到会返回空值 ac是我们上面引入的依赖def matcha(self, bb, aa):yuan = ac.imread(bb)mubi = ac.imread(aa)result = ac.find_template(yuan, mubi, 0.7) # 0.7相似度if (result != None):return result['result'][0], result['result'][1]# return yuan.shape[1],yuan.shape[0]return None
7.周末判断
#如果今天是周五或者周六 则打印xxx
if datetime.today().isoweekday() == 5 or datetime.today().isoweekday() == 6:print('xxx')
8.定时关机
调用系统执行命令
#6个小时后关机
os.system("shutdown -s -t 18000")
9.滑动鼠标轮
#正负值 即为向下或者向上划
p.scroll(-700)
10.键盘组合键
#alt+tab 切换任务栏
p.hotkey('alt', 'tab')
11.创建定时任务
#新建一个Blocking型的定时器scheduler = BlockingScheduler()#添加任务,day_of_week 一周的哪些天 hour 小时 minute分 意思每天的凌晨10分执行,cron的定时的一种表达式scheduler.add_job(self.job, 'cron', day_of_week='0-6', hour='0', minute='10')#启动任务scheduler.start()
总结
以上就是今天要讲的内容,本文仅仅简单介绍了python自动玩游戏的基本组件功能的使用,大家可以根据基本用法,自己设计出自己想要的功能。
使用python自动玩游戏相关推荐
- python自动玩游戏_超牛!用Python自动玩转2048游戏
本篇作者:BlueDamage 近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了,折腾了这么久, 于是想自动玩个2048游戏!嘿嘿, 我是一个不擅长玩 ...
- 使用python开发网页游戏_不敢想!不敢想!我用Python自动玩转2048游戏
近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了,折腾了这么久,于是想自动玩个2048游戏!嘿嘿, 我是一个不擅长玩游戏的人, 以前玩2048就经常得 ...
- python 游戏辅助lol_一个基于python的自动玩游戏辅助
文章目录 一.背景 场景分析 二.方案选择 方案对比: 三.设计思路 四.代码撸起来 五.工具效果 我的心得 一.背景 业余时间我会玩一玩游戏,然而并不是所有所有的游戏内容都会让我一直保持着兴趣.一段 ...
- python2048游戏的未来展望_不敢想!不敢想!我用Python自动玩转2048游戏
近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了,折腾了这么久,于是想自动玩个2048游戏!嘿嘿, 我是一个不擅长玩游戏的人, 以前玩2048就经常得 ...
- Python 自动玩谷歌浏览器“恐龙小游戏”
相信在座的各位小伙伴对Google Chrome浏览器中的一个游戏彩蛋恐龙小游戏(Chrome Dino)不陌生吧.在断开网络连接,我们访问网站的时候,就会出现一个小霸王龙,在我们再按下空格键后,即可 ...
- python创始人游戏_李总为AI湿身,而5118老板连夜教你Python写AI自动玩游戏,快搬凳...
5118 Python公开课 昨天在百度AI开发者大会现场,正当李彦宏在现场讲解百度无人驾驶汽车自动泊车时,一名不明人士冲向演讲台并向他泼洒不名液体.李彦宏没有停止演讲,并在现场表示:"大家 ...
- 如何让学习python像玩游戏一样上瘾
当前AI人才极度紧缺,据<中国ICT人才生态白皮书>研究分析,到2018年底,我国人工智能人才缺口将突破100万,到2020年,这一数字将攀升到226万. 在过去的几年中,Python已经 ...
- 【普通玩家VS高手玩家】一带传奇游戏《俄罗斯方块儿》新作—实现AI自动玩游戏~
导语 提到<俄罗斯方块>(Tetris),那真是几乎无人不知无人不晓. 其历史之悠久,可玩性之持久,能手轻轻一挥,吊打一大波游戏. 对于绝大多数小友而言,<俄罗斯方块>的规 ...
- Python:看我如何全程自动玩游戏带你飞,直接无敌
前言 最近我小表妹迷上了玩连连看,玩了一个星期了还没通关,真的是菜. 我实在是看不过去了,直接用python写了个脚本代码,一分钟一把游戏. 快是快,就是联网玩容易被骂,嘿嘿~ 但是,又不是我玩,有什 ...
- Python自动玩俄罗斯方块小游戏
开发工具 Python版本:3.6.4 相关模块: pyqt5模块: 以及一些Python自带的模块. 关注转发后私信回复"俄罗斯方块"获取相关文件 环境搭建 安装Python并添 ...
最新文章
- mysql 密码hash算法_如何用hash创建一个mySQL用户(‘sha256’,$salt.$password)?
- python中正则表达式是什么意思_python – 正则表达式中[^.] *的含义是什么?
- 首批绿证核发 2018年或适时启动强制约束交易
- SVN版控系统的安装和使用
- BIGEMAP如何将高程数据(等高线)转换成xi'an80或者beijing54坐标系
- 《originpro8》怎么拟合曲线
- web项目防御mysql注入_WEB安全 php+mysql5注入防御(二)
- 交换机和路由器的区别计算机网络,交换机和路由器的区别,教您交换机和路由器的区别...
- 详解OpenWrt路由器设置Crontab定时检查网络并重启
- 理解v8的Isolate调度
- 【JQuery】两种失焦事件的使用
- facebook最全面中文介绍,让你更加了解facebook
- 【进程线程】1. 概念和区别
- OpenCV基础教程——视频的读取与写入(超详细+附代码)
- 0.96寸IIC接口ssd1306和ssd1315驱动oled12864屏幕介绍
- html5新年动画祝福,canvas动画效果新年祝福话语
- Mybatis学习总结(结合个人理解)
- python3模拟抓狐狸小游戏
- 【产品时评】微信的堕落
- 调查一下您对四川灾区的支援情况
热门文章
- 怎么彻底删除mysql服务_mysql怎么卸载干净?
- 86五笔输入法教程详解
- html等宽字体汉字,等宽字体(Monospaced Font)
- SQL Server 不允许保存更改的解决方法
- Astar算法的Java实现 (其他很多都是错的,没有计入曼哈顿值的代价)
- Robotics 机器人运动学 DH参数建模
- 基于STM32的DMX512开发
- i.MX6 交叉编译zlib、yasm、xvidcore、libpng、x264、jpegsrc、ffmpeg
- 全国2009年10月考试电子商务与电子政务试题
- vs2005下载,中文版,官方