赞
踩
很久没有水文章了,很多老哥估计已经忘记本渣渣了吧,挤时间抽空水一篇,当然是以前写的,同时也有在用的工具脚本,大佬哥们可以跳过了!
按键精灵,这样一款工具相信不少人有了解过,乃至用过,当然本渣渣比较菜,应用的比较少,而且low,简单的录制一个脚本工具,就能够解放你的双手,节省时间,而现在本渣渣就应用Python PyAutoGUI 打造一个专属类似按键精灵脚本工具,当然应用的也是比较菜,仅供参考和学习而已!
PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,多平台支持(Windows,OS X,Linux)。
pip install pyautogui
pyautogui鼠标操作样例
- import pyautogui
-
- # 获取当前屏幕分辨率
- screenWidth, screenHeight = pyautogui.size()
-
- # 获取当前鼠标位置
- currentMouseX, currentMouseY = pyautogui.position()
-
- # 2秒钟鼠标移动坐标为100,100位置 绝对移动
- #pyautogui.moveTo(100, 100,2)
- pyautogui.moveTo(x=100, y=100,duration=2, tween=pyautogui.linear)
-
- #鼠标移到屏幕中央。
- pyautogui.moveTo(screenWidth / 2, screenHeight / 2)
-
- # 鼠标左击一次
- #pyautogui.click()
- # x
- # y
- # clicks 点击次数
- # interval点击之间的间隔
- # button 'left', 'middle', 'right' 对应鼠标 左 中 右或者取值(1, 2, or 3)
- # tween 渐变函数
- #
- pyautogui.click(x=None, y=None, clicks=1, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)
-
- # 鼠标相对移动 ,向下移动
- #pyautogui.moveRel(None, 10)
- pyautogui.moveRel(xOffset=None, yOffset=10,duration=0.0, tween=pyautogui.linear)
-
-
- # 鼠标当前位置0间隔双击
- #pyautogui.doubleClick()
- pyautogui.doubleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)
-
- # 鼠标当前位置3击
- #pyautogui.tripleClick()
- pyautogui.tripleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)
-
- #右击
- pyautogui.rightClick()
-
- #中击
- pyautogui.middleClick()
-
- # 用缓动/渐变函数让鼠标2秒后移动到(500,500)位置
- # use tweening/easing function to move mouse over 2 seconds.
- pyautogui.moveTo(x=500, y=500, duration=2, tween=pyautogui.easeInOutQuad)
-
- #鼠标拖拽
- pyautogui.dragTo(x=427, y=535, duration=3,button='left')
-
- #鼠标相对拖拽
- pyautogui.dragRel(xOffset=100,yOffset=100,duration=,button='left',mouseDownUp=False)
-
- #鼠标移动到x=1796, y=778位置按下
- pyautogui.mouseDown(x=1796, y=778, button='left')
-
- #鼠标移动到x=2745, y=778位置松开(与mouseDown组合使用选中)
- pyautogui.mouseUp(x=2745, y=778, button='left',duration=5)
-
- #鼠标当前位置滚轮滚动
- pyautogui.scroll()
- #鼠标水平滚动(Linux)
- pyautogui.hscroll()
- #鼠标左右滚动(Linux)
- pyautogui.vscroll()
pyautogui键盘操作样例
- #模拟输入信息
- pyautogui.typewrite(message='Hello world!',interval=0.5)
- #点击ESC
- pyautogui.press('esc')
- # 按住shift键
- pyautogui.keyDown('shift')
- # 放开shift键
- pyautogui.keyUp('shift')
- # 模拟组合热键
- pyautogui.hotkey('ctrl', 'c')
- # -*- coding: utf-8 -*-
- #微信:huguo00289
- import pyautogui
- import pyperclip
- import time
- import string
- import random
-
- #随机生成字母
- def sjs(n):
- letters_list = ''
- while len(letters_list) < n:
- a_str = string.ascii_letters #所有大小写字母
- random_letter = random.choice(a_str)
- letters_list=letters_list+random_letter
-
- print(letters_list)
- return letters_list
-
-
- #复制粘贴文本内容
- def paste(utext):
- pyperclip.copy(utext)
- pyautogui.hotkey('ctrl', 'a')
- pyautogui.hotkey('ctrl', 'v')
-
-
- pyautogui.PAUSE = 0.8 #设置延迟 #为所有的PyAutoGUI函数增加延迟。默认延迟时间是0.1秒
-
- #签到任务
- def qd():
- #签到
- pqd = pyautogui.locateCenterOnScreen('1.png', confidence=0.9)
- print(pqd)
- pyautogui.click(*pqd)
- time.sleep(12)
-
- # 关闭签到成功
- pyautogui.moveTo(x=232, y=615)
- pyautogui.click()
- time.sleep(4)
这里主要提一下,pyautogui.locateCenterOnScreen('1.png', confidence=0.9),识别你的预先设置的截图,confidence设置的图片精确度,可以达到录制脚本工具的效果!
相比于定位xy轴,使用定位图片来定位的方式,大概率会更加方便以及准确,不会受到干扰!
至于这个工具脚本的用途,可以由你自己扩展,比如,某些死板的签到,注册,点击任务,多番测试应该都能实现,比如某个大佬写的加人工具,添加QQ好友的工具脚本!
参考来源:CSDN「灵动的艺术」:pyautogui自动化控制鼠标和键盘操作
原文链接:https://blog.csdn.net/weixin_43430036/article/details/84650938
·················END·················
你好,我是二大爷,
革命老区外出进城务工人员,
互联网非早期非专业站长,
喜好python,写作,阅读,英语
不入流程序,自媒体,seo . . .
公众号不挣钱,交个网友。
读者交流群已建立,找到我备注 “交流”,即可获得加入我们~
听说点 “在看” 的都变得更好看呐~
关注关注二大爷呗~给你分享python,写作,阅读的内容噢~
扫一扫下方二维码即可关注我噢~
关注我的都变秃了
说错了,都变强了!
不信你试试
扫码关注最新动态
公众号ID:eryeji
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。