精华内容
下载资源
问答
  • pyautogui

    千次阅读 2018-05-13 21:00:22
    本文简单介绍如何使用 Python 的 pyautogui 模块实现鼠标的自动移动以及键盘的自行输入. 该模块不是 Python 自带的, 因此执行以下命令进行安装123# pyautogui模块依赖image模块,没有image会报ImportError: No ...

    本文简单介绍如何使用 Python 的 pyautogui 模块实现鼠标的自动移动以及键盘的自行输入. 该模块不是 Python 自带的, 因此执行以下命令进行安装

    1

    2

    3

    # pyautogui模块依赖image模块,没有image会报ImportError: No module named ‘PIL‘错误

    pip install image

    pip install pyautogui

    官方文档介绍:https://pyautogui.readthedocs.io/en/latest/


    使用 pyautogui 模块控制鼠标的移动

    • size(): 用于获取屏幕分辨率

    1

    2

    3

    import pyautogui

     

    print(pyautogui.size())


    • moveTo(): 用于鼠标的移动

    1

    pyautogui.moveTo(100,100,duration=1)

    这段代码调用了 moveTo() 函数, 其接受 x, y 坐标作为参数, 还有一个可选的持续时间参数. 该函数将鼠标指针从当前位置移动到 (x, y) 坐标指定的位置, 移动花费的时间由持续时间参数指定. 保存并运行该 Python 脚本, 你将看到, 鼠标指针像被施了魔法一样, 从当前位置花 1 秒钟时间移动到坐标位置 (100, 100).


    • moveRel(): 根据当前位置, 相对移动鼠标指针

    1

    pyautogui.moveRel(0,300,duration=1)

    这段代码将鼠标指针从原位置相对地移动 (0, 300) 个像素点 (译注: 即向下移动 300 像素). 比如说, 运行代码之前, 鼠标指针在 (1000, 300), 那么代码运行之后, 鼠标指针将移动到 (1000, 600), 耗时 1 秒.


    • position(): 获取当前鼠标指针的位置

    1

    print(pyautogui.position())

    输出: 程序执行时的鼠标所在的位置坐标.


    • click(): 用于控制鼠标点击和拖拽

    1

    pyautogui.click(370,120)

    在(370,120)的位置模拟鼠标点击,其中click还有一个参数动作button,默认为‘lest‘,当button=‘right‘时,可rightClick()效果一样(鼠标右键点击)


    • doubleClick() 双击

    • rightClick() 右击

    有两个与鼠标拖拽操作相关的函数: dragTo 和 dragRel. 它们的行为与 moveTo 和 moveRel 类似, 区别在于拖拽操作在移动的过程中, 会保持鼠标左键被按下.

    该功能可用于不同的场景, 比如移动对话框,或在 Windows 的画板程序中用铅笔工具自动绘图

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    import pyautogui

    import time

     

    time.sleep(5# 5秒种时间切换到画板程序

     

    pyautogui.moveTo(200,200,duration=1# 鼠标移动到(200,200)的位置

     

    pyautogui.dragRel(100,0,duration=1)

    pyautogui.dragRel(0,100,duration=1)

    pyautogui.dragRel(-100,0,duration=1)

    pyautogui.dragRel(0,-100,duration=1)


    • scroll(): 滚屏函数接受像素数作为参数, 并用给定的像素数向上滚屏

    1

    pyautogui.scroll(200)

    对选中的窗口进行向上滚屏200个像素点.当值为负数时,向下移动


    • typewrite(): 用于自动键入字符串, 只需将要键入的字符串传递给函数作为参数即可

    1

    2

    pyautogui.click(100,200)

    pyautogui.typewrite(‘hello word!‘)

    假设文本区域位于屏幕 (100, 200) 的坐标位置, 那么这段代码将点击文本区域, 激活它, 并键入‘hello word!‘


    • 传递键名: 可以向 typywrite() 函数传入分离的键名.

    1

    pyautogui.typewrite([‘a‘,‘left‘,‘ctrlleft‘])

    这段代码等价于: 键入 "a", 然后敲击左方向键, 再敲击左 ctrl 键.


    • 热键组合: hotkey() 可以模拟组合热键, 比如: ctrl-c, ctrl-a, ctrl-v 等

    1

    pyautogui.hotkey(‘ctrlleft‘,‘v‘)

    模拟ctrl-v,复制功能

    1

    2

    3

    4

    5

    6

    7

    8

    pyautogui.hotkey(‘ctrl‘‘shift‘‘esc‘)

    等价于

    pyautogui.keyDown(‘ctrl‘)

    pyautogui.keyDown(‘shift‘)

    pyautogui.keyDown(‘esc‘)

    pyautogui.keyUp(‘esc‘)

    pyautogui.keyUp(‘shift‘)

    pyautogui.keyUp(‘ctrl‘)


    • press() :键盘功能按键

    1

    2

    3

    pyautogui.press(‘enter‘)  # press the Enter key

    pyautogui.press(‘f1‘)     # press the F1 key

    pyautogui.press(‘left‘)   # press the left arrow key


    • 消息弹窗函数

    如果你需要消息弹窗,通过单击OK暂停程序,或者向用户显示一些信息,消息弹窗函数就会有类似JavaScript的功能:

    1

    2

    3

    pyautogui.alert(‘这个消息弹窗是文字+OK按钮‘)  # 返回OK 

    pyautogui.confirm(‘这个消息弹窗是文字+OK+Cancel按钮‘# 返回OK 或 Cancel

    pyautogui.prompt(‘这个消息弹窗是让用户输入字符串,单击OK‘# 返回输入的字符串

    展开全文
  • PyAutoGUI PyAutoGUI is a cross-platform GUI automation Python module for human beings. Used to programmatically control the mouse & keyboard. pip install pyautogui Full documentation available at ...
  • PyAutoGUI使用

    2021-03-19 10:55:16
    PyAutoGUI使用 ### 鼠标事件 获取屏幕大小,返回的为元组:width, height = pyautogui.size() 检查坐标是否在屏幕内,返回bool值:pyautogui.onScreen(x, y) 获取鼠标位置,返回的为元组:currentMouseX, ...

    PyAutoGUI使用

    ### 鼠标事件

    • 获取屏幕大小,返回的为元组:width, height = pyautogui.size()

    • 检查坐标是否在屏幕内,返回bool值:pyautogui.onScreen(x, y)

    • 获取鼠标位置,返回的为元组:currentMouseX, currentMouseY = pyautogui.position()

    • 移动鼠标到某个位置(x, y),直接到达指定位置没有移动过程:pyautogui.moveTo(x, y)

    • 移动鼠标到某个位置(x, y),鼠标在t这段时间内移动到指定位置:pyautogui.moveTo(x, y, t)

    • 使用鼠标单击button点击的键,clicks点击次数, interval点的时间间隔:pyautogui.click(button, clicks, interval)

    • 使用鼠标点击某个位置(x, y):pyautogui.click(x, y)

    • 使用鼠标点击图片(“图片地址”):pyautogui.click(“图片地址”)

    • 鼠标键按住(长按):pyautogui.mouseDown(button)

    • 鼠标键松开(松开长按):pyautogui.mouseUp(button, x, y)

    • 鼠标滑动滚轮,l鼠标滚动次数正负代表向上还是向下滑动,x,y为鼠标位置:pyautogui.scroll(l , x, y)

    • 让鼠标相对于当前位置移动水平移动的距离为x,垂直移动的距离为y:pyautogui.move(x ,y)

    • 使用鼠标双击:pyautogui.doubleClick(x, y)

    • 拖动鼠标x, y为水平和竖直拖动的距离duration为拖动时间,button为按下那个键进行拖动默认左键:pyautogui.drag(x, y, duration=int, button=“left” or “middle” or “right”)

    • 鼠标移动的花样(没有实际作用,就用来使鼠标的移动过程看起来不那么单调的)move、moveTo、drag、dragTo函数可用:

      • pyautogui.easeInQuad 鼠标移动开始慢,结束快
      • pyautogui.easeOutQuad 鼠标移动开始快,结束慢
      • pyautogui.easeInOutQuad 鼠标移动开始结束快,中间慢
      • pyautogui.easeInBounce 鼠标移动到最后反弹
      • pyautogui.easeInElastic 鼠标移动想橡皮筋似的来回弹跳最终回到(x , y)

    键盘事件:

    • 模拟键盘输入字符串str,每个按键的按下时间间隔t(int类型):pyautogui.write(str, interval = t)

    • 按某个键(点击键盘):pyautogui.press(键名, presses) # 键名(pyautogui.KEY_NAMES)可接受键名列表,即依次按下。presses按下的次数

    • 按住某个键(长按)(例如:长按shift):pyautogui.keyDown(“shift”)

    • 松开某个键(长按后松开)(例如:松开长按的shift):pyautogui.keyUp(“shift”)

    • 使用组合键(例如复制的快捷键Ctrl + c):pyautogui.hotkey(“ctrl”, “c”)

    信息框

    • 弹出只有确定按键提示:pyautogui.alert(text = “str(提示字符串)”, title=“str(题目)”, button = “OK”)

    • 弹出有确定和关闭按键的提示:confirm(text="", title=’"", buttons=[‘OK’, ‘Cancel’])

    • 弹出带有输入框的提示:prompt(text=’’, title=’’ , default=’’)

    • 弹出带有密文输入框的提示:password(text=’’, title=’’, default=’’, mask=’*’)

    展开全文
  • pyautogui自动化控制鼠标和键盘操作

    万次阅读 多人点赞 2018-11-30 14:43:10
    pyautogui自动化控制鼠标和键盘操作安装pyautogui鼠标操作样例pyautogui键盘操作样例按键支持提示信息alertoptionpasswordprompt截屏整个屏幕截图并保存屏幕截图并分析安全设置 PyAutoGUI是一个纯Python的GUI自动化...


    PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,多平台支持(Windows,OS X,Linux)。

    安装

    pip3 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')
    

    按键支持

    按键 说明
    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键

    提示信息

    alert

    #pyautogui.alert('This is an alert box.','Test')
    pyautogui.alert(text='This is an alert box.', title='Test')
    

    在这里插入图片描述

    option

    #pyautogui.confirm('Shall I proceed?')
    pyautogui.confirm('Enter option.', buttons=['A', 'B', 'C'])
    

    在这里插入图片描述

    password

    a = pyautogui.password('Enter password (text will be hidden)')
    print(a)
    

    在这里插入图片描述

    prompt

    a = pyautogui.prompt('input  message')
    print(a)
    

    在这里插入图片描述

    截屏

    整个屏幕截图并保存

    im1 = pyautogui.screenshot()
    im1.save('my_screenshot.png')
    
    im2 = pyautogui.screenshot('my_screenshot2.png')
    

    屏幕查找图片位置并获取中间点

    #在当前屏幕中查找指定图片(图片需要由系统截图功能截取的图)
    coords = pyautogui.locateOnScreen('folder.png')
    #获取定位到的图中间点坐标
    x,y=pyautogui.center(coords)
    #右击该坐标点
    pyautogui.rightClick(x,y)
    

    安全设置

    import pyautogui
    
    #保护措施,避免失控
    pyautogui.FAILSAFE = True
    #为所有的PyAutoGUI函数增加延迟。默认延迟时间是0.1秒。
    pyautogui.PAUSE = 0.5
    
    展开全文
  • pyautogui安装

    2021-04-19 11:01:21
    pyautogui安装 打开dos 输入: pip install pyautogui then: then: 成功

    pyautogui安装
    打开dos
    输入:

    pip install pyautogui
    

    在这里插入图片描述
    then:
    在这里插入图片描述

    then:
    在这里插入图片描述
    成功

    展开全文
  • pyautogui英文文档

    2019-02-04 14:27:59
    PyAutoGUI is a Python module for programmatically controlling the mouse and keyboard.
  • pyautogui使用

    2020-05-18 16:11:35
    pip install pyautogui 坐标轴:电脑屏幕的左上角是位置(0,0),向右X坐标正方向,向下Y坐标正方向 import pyautogui # 获取屏幕尺寸 screenWidth, screenHeight = pyautogui.size() # 获取鼠标当前位置 ...
  • Pyautogui(英文版)

    2021-02-03 13:31:35
    Pyautogui(英文版)
  • pyautogui操作

    2019-12-19 14:12:51
    **pyautogui操作** pyautogui实现自动化点击的一个功能,找了个博客学了下基本用法。 参见
  • PyAutoGUI帮助文档

    千次阅读 2018-04-01 11:38:18
    import pyautogui # PyAutoGUI中文输入需要用粘贴实现 # Python 2版本的pyperclip提供中文复制 def paste(foo): pyperclip.copy(foo) pyautogui.hotkey('ctrl', 'v') foo = u'学而时习之' # 移动到文本框 ...
  • PyAutoGUI Doc

    2018-07-12 20:50:30
    PyAutoGUI——让所有GUI都自动化¶ 本教程译自大神Al Sweigart的PyAutoGUI项目,Python自动化工具,更适合处理GUI任务,网页任务推荐: Selenium+Firefox记录(Chromedriver和Phantomjs也很给力,...
  • pyautogui-mouse-move-example:使用pyautogui移动鼠标的示例
  • pyautogui.按键案例.py

    2021-07-13 13:48:40
    pyautogui.按键案例
  • pyautogui介绍

    2019-10-03 11:48:37
    https://pyautogui.readthedocs.io/en/latest/introduction.html Introduction ...The purpose of PyAutoGUI is to provide a cross-platform Python module for GUI automationfor human beings. T...
  • Python PyAutoGUI UI自动化

    2021-07-17 00:38:01
    Python PyAutoGUI UI自动化=====================课程介绍------------PyAutoGUI 是 Python 比较强大的UI自动化库  ①有鼠标控制、键盘操作、屏幕截图、图片定位、消息对话框、窗口操作等功能;  ②有非常...
  • pyautogui参考

    2020-11-20 19:26:44
    https://pyautogui.readthedocs.io/en/latest/install.html#windows https://blog.csdn.net/yzy_1996/article/details/85244714
  • pyautogui与PyGetWindow.zip

    2020-01-06 21:57:36
    pyautogui模块 + PyGetWindow模块 先安装pygetwindow,再安装pyautogui。 安装成功后还是不能正常运行只要把pygetwindow改为0.01一般都能正常使用了
  • pyautogui学习笔记

    2021-06-30 14:07:26
    import pyautogui import random print(pyautogui.size()) print(pyautogui.position()) user_time=random.randint(1,5)#产生1-5之间的随机整数 #pyautogui.moveTo(1806,200,duration=user_time)#移动到指定位置,...
  • 我使用Pyautogui创建的项目的存储库。 Classs.py: 这是我的私人机器人,可以加入我的Google课程。 目前正在开发一种完全可定制的通用版本。 您可以在我处理它时检查它的进度,要求gmeetclass文件夹位于同一目录中 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,211
精华内容 1,284
关键字:

pyautogui