文章目录

  • 怎么玩?
  • 一、安装依赖
  • 二、使用步骤
    • 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自动玩游戏相关推荐

  1. python自动玩游戏_超牛!用Python自动玩转2048游戏

    本篇作者:BlueDamage 近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了,折腾了这么久, 于是想自动玩个2048游戏!嘿嘿, 我是一个不擅长玩 ...

  2. 使用python开发网页游戏_不敢想!不敢想!我用Python自动玩转2048游戏

    近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了,折腾了这么久,于是想自动玩个2048游戏!嘿嘿, 我是一个不擅长玩游戏的人, 以前玩2048就经常得 ...

  3. python 游戏辅助lol_一个基于python的自动玩游戏辅助

    文章目录 一.背景 场景分析 二.方案选择 方案对比: 三.设计思路 四.代码撸起来 五.工具效果 我的心得 一.背景 业余时间我会玩一玩游戏,然而并不是所有所有的游戏内容都会让我一直保持着兴趣.一段 ...

  4. python2048游戏的未来展望_不敢想!不敢想!我用Python自动玩转2048游戏

    近来在折腾selenium自动化, 感觉配合爬虫很有意思, 大多数以前难以模拟登录的网站都可以爬了,折腾了这么久,于是想自动玩个2048游戏!嘿嘿, 我是一个不擅长玩游戏的人, 以前玩2048就经常得 ...

  5. Python 自动玩谷歌浏览器“恐龙小游戏”

    相信在座的各位小伙伴对Google Chrome浏览器中的一个游戏彩蛋恐龙小游戏(Chrome Dino)不陌生吧.在断开网络连接,我们访问网站的时候,就会出现一个小霸王龙,在我们再按下空格键后,即可 ...

  6. python创始人游戏_李总为AI湿身,而5118老板连夜教你Python写AI自动玩游戏,快搬凳...

    5118 Python公开课 昨天在百度AI开发者大会现场,正当李彦宏在现场讲解百度无人驾驶汽车自动泊车时,一名不明人士冲向演讲台并向他泼洒不名液体.李彦宏没有停止演讲,并在现场表示:"大家 ...

  7. 如何让学习python像玩游戏一样上瘾

    当前AI人才极度紧缺,据<中国ICT人才生态白皮书>研究分析,到2018年底,我国人工智能人才缺口将突破100万,到2020年,这一数字将攀升到226万. 在过去的几年中,Python已经 ...

  8. 【普通玩家VS高手玩家】一带传奇游戏《俄罗斯方块儿》新作—实现AI自动玩游戏~

    导语 提到<俄罗斯方块>(Tetris),那真是几乎无人不知无人不晓. ​ 其历史之悠久,可玩性之持久,能手轻轻一挥,吊打一大波游戏. 对于绝大多数小友而言,<俄罗斯方块>的规 ...

  9. Python:看我如何全程自动玩游戏带你飞,直接无敌

    前言 最近我小表妹迷上了玩连连看,玩了一个星期了还没通关,真的是菜. 我实在是看不过去了,直接用python写了个脚本代码,一分钟一把游戏. 快是快,就是联网玩容易被骂,嘿嘿~ 但是,又不是我玩,有什 ...

  10. Python自动玩俄罗斯方块小游戏

    开发工具 Python版本:3.6.4 相关模块: pyqt5模块: 以及一些Python自带的模块. 关注转发后私信回复"俄罗斯方块"获取相关文件 环境搭建 安装Python并添 ...

最新文章

  1. mysql 密码hash算法_如何用hash创建一个mySQL用户(‘sha256’,$salt.$password)?
  2. python中正则表达式是什么意思_python – 正则表达式中[^.] *的含义是什么?
  3. 首批绿证核发 2018年或适时启动强制约束交易
  4. SVN版控系统的安装和使用
  5. BIGEMAP如何将高程数据(等高线)转换成xi'an80或者beijing54坐标系
  6. 《originpro8》怎么拟合曲线
  7. web项目防御mysql注入_WEB安全 php+mysql5注入防御(二)
  8. 交换机和路由器的区别计算机网络,交换机和路由器的区别,教您交换机和路由器的区别...
  9. 详解OpenWrt路由器设置Crontab定时检查网络并重启
  10. 理解v8的Isolate调度
  11. 【JQuery】两种失焦事件的使用
  12. facebook最全面中文介绍,让你更加了解facebook
  13. 【进程线程】1. 概念和区别
  14. OpenCV基础教程——视频的读取与写入(超详细+附代码)
  15. 0.96寸IIC接口ssd1306和ssd1315驱动oled12864屏幕介绍
  16. html5新年动画祝福,canvas动画效果新年祝福话语
  17. Mybatis学习总结(结合个人理解)
  18. python3模拟抓狐狸小游戏
  19. 【产品时评】微信的堕落
  20. 调查一下您对四川灾区的支援情况

热门文章

  1. 怎么彻底删除mysql服务_mysql怎么卸载干净?
  2. 86五笔输入法教程详解
  3. html等宽字体汉字,等宽字体(Monospaced Font)
  4. SQL Server 不允许保存更改的解决方法
  5. Astar算法的Java实现 (其他很多都是错的,没有计入曼哈顿值的代价)
  6. Robotics 机器人运动学 DH参数建模
  7. 基于STM32的DMX512开发
  8. i.MX6 交叉编译zlib、yasm、xvidcore、libpng、x264、jpegsrc、ffmpeg
  9. 全国2009年10月考试电子商务与电子政务试题
  10. vs2005下载,中文版,官方