精华内容
下载资源
问答
  • 主要介绍了python模拟鼠标拖动操作的方法,实例分析了Python鼠标操作及键位操作的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 通过Python可以模拟鼠标点击和键盘输入的操作,进而可以实现一些比较有趣的功能,例如游戏挂机、自动发消息等。本文以自动发消息为例,实现该功能,通过该代码可以自动往QQ、微信发送任意内容。首先考虑想要实现一个...

    通过Python可以模拟鼠标点击和键盘输入的操作,进而可以实现一些比较有趣的功能,例如游戏挂机、自动发消息等。

    本文以自动发消息为例,实现该功能,通过该代码可以自动往QQ、微信发送任意内容。首先考虑想要实现一个这样的功能应该有哪些步骤:

    1、 我们需要知道需要自动发送什么东西

    2、 因为是模拟键盘和鼠标的输入,因此我们需要知道鼠标和键盘正常的操作顺序,才能用Python来模拟这一过程。

    一、准备工作:

    需要安装pyHook库以及PyUserInput库,pyHook库进入网站:https://www.lfd.uci.edu/~gohlke/pythonlibs/,找到Index by date中的pyHook,点进去之后页面会跳到这里:

    第一行代表Python37,win32位,第二行代表Python37,win64位,以此类推。那么我们如何看Python版本呢,打开cmd,输入Python即可。之后利用pip进行安装即可,代码如下:

    pip install C:\Users\778\Desktop\新建文件夹\pyHook-1.5.1-cp37-cp37m-win_amd64.whl

    之后就可以安装PyUserInput库了,代码:

    pip install PyUserInput

    二、代码实现:

    首先我们需要导入pykeyboard以及pymouse库,并建立鼠标和键盘对象:

    from pykeyboard import *

    from pymouse import *

    m = PyMouse() #建立鼠标对象

    k = PyKeyboard() #建立键盘对象

    接下来我们如果想自动发消息我们需要知道:需要输入的内容以及鼠标点击的位置,即输入框的位置和发送的位置,这样,我们通过点击输入框和发送,即可实现发送消息。通过m.position()可以知道当前鼠标的位置,当然我们还需要点时间,使得我们能够把鼠标移动到需要的位置:

    import time

    time.sleep(2)

    location1=m.position()

    time.sleep(4)

    location2=m.position()

    这样我们就可以得到输入框和发送的位置,这样我们就可以得到输入框和发送的位置,接下来就是如何把输入的内容打到输入框中呢,别着急,通过k.type_string(‘I love u’)就可以把括号内的输入进去了,我们来试试:

    from pykeyboard import *

    from pymouse import *

    import time

    m = PyMouse() #建立鼠标对象

    k = PyKeyboard() #建立键盘对象

    time.sleep(2)

    location1=m.position()

    time.sleep(4)

    location2=m.position()

    m.click(location1[0],location1[1])

    k.type_string('I love you')

    m.click(location2[0],location2[1])

    看看效果:

    好吧,看来一个I love you还是不能掳掠女神的芳心,那怎么办呢,可以依靠一个循环来做。

    from pykeyboard import *

    from pymouse import *

    import time

    m = PyMouse() #建立鼠标对象

    k = PyKeyboard() #建立键盘对象

    time.sleep(2)

    location1=m.position()

    time.sleep(4)

    location2=m.position()

    for each in range(100):

    m.click(location1[0],location1[1])

    k.type_string('I love you')

    m.click(location2[0],location2[1])

    一起来看看效果吧:

    好吧,此刻你已经掳掠了女神的芳心,这时候我们发现,type_string方法只能输入英文,中文输入不了,这可怎么办呢,女神还在等我表白呢,别着急,pyperclip库可以帮我们来完成这一过程,思想就是我们复制我们需要发送的内容,再模拟键盘按下ctrl+v就可以了:

    from pykeyboard import *

    from pymouse import *

    import time

    import pyperclip

    m = PyMouse() #建立鼠标对象

    k = PyKeyboard() #建立键盘对象

    time.sleep(2)

    location1=m.position()

    time.sleep(4)

    location2=m.position()

    for each in range(10):

    pyperclip.copy('我爱你')

    #以下语句模拟键盘点击ctrl+v

    k.press_key(k.control_key)

    k.tap_key('v')

    k.release_key(k.control_key)

    m.click(location2[0],location2[1])

    恭喜你们,当然一直输入我喜欢你未免有些单调了,我想夸夸他咋办呢,别着急,我们先查查百度有什么夸女生的词汇,查找之后发现有:聪明伶俐 .蕙来质兰心,贤良淑德,秀外慧中,天资聪慧,伶俐乖巧,花容月貌 袅袅娉娉 秀色可餐度 国色天香 皓齿蛾眉 皓齿明眸 绝色问佳人 天生丽质 我见犹怜 小家碧玉 远山芙蓉 章台杨柳 朱唇皓答齿 齿若编贝 冰雪自聪明 剔透玲珑 出淤泥而不染,香风朴面而不沾.可亲.富有朝气.漂亮,可爱,美丽,动人,天真,浪百漫,快乐,灵巧,热度情,甜美,典雅,优雅,调皮.沉鱼落雁 闭月羞花 倾国倾城 美如冠玉 眉目如画 出水芙蓉 如花问似玉 国色天香 眉清目秀 亭亭玉立 风度翩翩 神情明答秀

    哇,好多啊,可是我们不能一股脑的直接输进去吧,我希望能够一个一个词语输,怎么办呢,可以把这些字符串转化为列表形式,按照字符或者空格进行对字符串进行分割,然后一个一个打出来就好了:

    from pykeyboard import *

    from pymouse import *

    import time

    import pyperclip

    str1="""聪明伶俐 .蕙来质兰心,贤良淑德,秀外慧中,天资聪慧,伶俐乖巧,花容月貌 袅袅娉娉 秀色可餐度

    国色天香 皓齿蛾眉 皓齿明眸 绝色问佳人 天生丽质 我见犹怜 小家碧玉 远山芙蓉 章台杨柳 朱唇皓答齿

    齿若编贝 冰雪自聪明 剔透玲珑 出淤泥而不染,香风朴面而不沾.可亲.富有朝气.漂亮,可爱,美丽,动人,

    天真,浪百漫,快乐,灵巧,热度情,甜美,典雅,优雅,调皮.沉鱼落雁 闭月羞花 倾国倾城 美如冠玉

    眉目如画 出水芙蓉 如花问似玉 国色天香 眉清目秀 亭亭玉立 风度翩翩 神情明答秀 """

    number=0

    strresult=""

    for each in str1:

    if str1[number] in '!"#$%&()*+,,-./:;<=>?@[\\]^_‘{|}~':

    strresult=strresult+" "

    else:

    strresult=strresult+str1[number]

    number+=1

    words=strresult.split()

    pyperclip.copy("您真是")

    m = PyMouse() #建立鼠标对象

    k = PyKeyboard() #建立键盘对象

    time.sleep(2)

    location1=m.position()

    time.sleep(4)

    location2=m.position()

    time.sleep(1)

    m.click(location1[0],location1[1])

    k.press_key(k.control_key)

    k.tap_key('v')

    k.release_key(k.control_key)

    number=0

    for i in range(len(words)):

    time.sleep(0.5)

    pyperclip.copy(words[number])

    #以下语句模拟键盘点击ctrl+v

    k.press_key(k.control_key)

    k.tap_key('v')

    k.release_key(k.control_key)

    m.click(location2[0],location2[1])

    number+=1

    三、相关拓展

    PyKeyboard的基本方法

    k.type_string('abcdefg') --输入内容

    k.press_key('a') --按a键

    k.release_key('a') --松开a键

    k.tap_key('a') --点击a键

    k.tap_key('a', n=2, interval=5) --点击a键2次,每次间隔5秒

    k.tap_key(k.function_keys[5]) --功能键F5

    PyMouse的基本方法

    1)drag(self, x, y)

    把鼠标移动到x,y坐标处,是一个拖拽动作,不只是移动

    2) move(self, x, y)

    把鼠标移动到x,y

    3)position(self)

    得到鼠标的当前位置,并返回坐标x,y

    4)press(self, x, y, button=1)

    鼠标按下不松开x,y的坐标点,button表示左右键

    5)release(self, x, y, button=1)

    松开指定位置的鼠标

    6)scroll(self, vertical=None, horizontal=None, depth=None)

    生成最多三个维度的鼠标滚动事件:垂直、水平和深度(仅限于Mac)。这些参数的值可以是正数或负数(浮点数或整数)。请参阅以下内容:

    Vertical: + Up, - Down

    Horizontal: + Right, - Left

    Depth: + Rise (out of display), - Dive (towards display)

    滚动鼠标的滚轮,在三个方向上移动

    7)click(self, x, y, button=1, n=1)

    在给定的x,y上单击鼠标按钮n次。button定义为1=左,2=右,3=中间。

    展开全文
  • 在P-1.3中我成功地安装了PyUserInput模块现在我要学习如何使用它控制鼠标键盘 首先 from pymouse import PyMouse from pykeyboard import PyKeyboard 当我疑惑为什么要用from xxx import xxx时一个知乎答主解答...

    在P-1.3中我成功地安装了PyUserInput模块现在我要学习如何使用它控制鼠标键盘

    首先

    from pymouse import PyMouse
    from pykeyboard import PyKeyboard

    当我疑惑为什么要用from xxx import xxx时一个知乎答主解答了我的疑惑
    这里写图片描述
    真感谢你呀:>
    这里写图片描述
    的确,from random import randint之后可以直接使用randint指令而不用输入random.randint指令了。

    接下来建立一个鼠标和键盘的对象:

    m = PyMouse()
    k = PyKeyboard()

    (ok,不用特别输入pymouse.PyMouse了)
    And I’ve found out that I can replace an order with a “mark”, as follows:

    >>> m=print
    >>> m('a')
    a
    >>> m=random
    >>> m.randint(1,2)
    1
    >>> m=random.randint
    >>> m(1,2)
    2
    >>> m=random.randint(1,2)
    >>> m
    2
    >>> 

    Of course, I must note that:

    >>> print=random
    >>> print('Does it work?')
    Traceback (most recent call last):
      File "<pyshell#50>", line 1, in <module>
        print('Does it work?')
    TypeError: 'module' object is not callable
    >>> 

    Well, it doesn’t work anymore

    anyway

    快速学习新代码的方式之一是写一个小程序,程序如下:

    from pymouse import PyMouse
    import time
    m = PyMouse()
    (x,y)=m.position()#获取当前坐标的位置
    time.sleep(1)
    m.move(x,y)#鼠标移动到xy位置
    print (x,y)
    

    其中import time库使用time.sleep(x)函数是因为我希望让程序暂停一小段时间

    关于time.sleep:
    1) Note that using the function “time.sleep(x)”means that you must wait after you use the “KeyboardInterrupt” (Ctrl+C in IDLE),during the sleeping period.
    2) “让程序执行暂停指定的秒数,参数可以是浮点型以指定精确的时间,但是程序真正暂停的时间可能长于请求的时间也可能短于暂停的时间。”

    pykeyboard库也是类似的用法。Mouse与Keyboard的具体指令可以参照网络或者在IDLE中用自动完成功能(TAB键)一个个取出来尝试。

    下面写一个模拟鼠标拖动的小程序作为练习:

    from pymouse import PyMouse#import pymouse类
    from time import sleep#import time类
    from math import atan,pi,sin,cos#import一些数学函数和pi
    
    sgn = lambda x: 1 if x > 0 else -1 if x < 0 else 0
    #自定义函数lamdax(x1,x2...): lambdax1,x2... 等于y11,y12...(当[条件1]),而在[条件1]以外的情况下等于y21,y22...(当[条件2]),...,在[条件n]以外的情况下等于yn1,yn2...    ,必须在全集中有定义#
    non0 = lambda x:1/1e99 if x==0 else x#使0变成极为逼近0的量的函数
    #low10 = lambda x:10 if x>=10 else -10 if x <= -10 else x#最终没有用上的限制函数
    switch,x,y,xt,yt=1,0,0,0,0#发现可以在一行定义多个变量了
    m=PyMouse()
    #以下两行定义了目的坐标
    sleep(2)
    c=m.position()#c for coordinate
    
    while switch==1:
        c_=m.position()#获取目前的位置
        (x,y),(xt,yt)=c,c_#可以这样定义横纵坐标的大小
        d=(((xt-x)**2+(yt-y)**2)**0.25)
        #利用距离改变移动的幅度与方向精度(精度与幅度成正比,幅度越大,靠近目的坐标时越难settle,精度越小,消耗的路程越长。故需要精度与靠近程度成正比)
        #试了>1的指数配合low10函数,但这种函数变化太快了,效果不好
        dx,dy=sgn(xt-x),-sgn(yt-y)
        k=-(yt-y)/non0(xt-x)
        o_=0.5*(1-dx)*pi+atan(k)#此处我利用判断命令,制作了由(k,dx)到o_的映射,也是{x到arctan(x)函数向上延伸一个周期的隐函数图像}的"映射",由于此隐函数图像不对称,所以此函数的输出也不与k对称。而用arccosx可以得到一个对称的函数
        #其实这里只是我想建立x到一个隐函数图像的映射,所以我需要第三个条件变量
        xd,yd=cos(o_-pi),sin(o_-pi)#这是以鼠标位置为原点的(以屏幕为基准的)直角坐标系上指向目的坐标的方向向量。
    
        m.move(xt+(round(d*xd)),yt-(round(d*yd))) #在方向向量前乘一个系数再取整,得到本次移动的恰当像素数及方向
        sleep(0.01)#避免鼠标移动过快
    

    在这个小程序的基础上,可以做出一些有意思的拓展,如果再作出一些精简,可能非常实用

    1/9日批注:

    autopy3

    //autopy是一个自动化操作的python库,可以模拟一些鼠标、键盘事件,还能对屏幕进行访问

    Pillow

    //Pillow是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库。

    安装autopy3之前需要安装OpenGL和Libpng

    ===============================

    OpenGL pip安装就可以了 我就不多说了 我用的IDE是pycharm直接用IDE安装的

    Libpng的话安装稍微麻烦一点可以看下面这个帖子是MAC安装Libpng的例子!

    点击打开链接

    http://blog.csdn.net/u014017080/article/details/76116642

    ===============================

    import autopy3 as autopy,PIL  
    
    autopy.mouse.move(100, 100) # 移动鼠标  
    autopy.mouse.smooth_move(300, 300) # 平滑移动鼠标(上面那个是瞬间的)  
    
    autopy.mouse.click() # 单击  
    autopy.mouse.toggle(True) # 按下左键  
    autopy.mouse.toggle(False) # 松开左键  

    未经尝试,这是更简便的模拟拖动方法
    引用自网络

    展开全文
  • Python模拟鼠标键盘点击自动化 首先在玩动物餐厅的时候发现他需要连续点击才能完成任务,而这有是一项枯燥而复杂的任务,所以我就想到用python的鼠标模拟来自动完成 Python中模拟键盘和鼠标最著名的模块是:pymouse...

    Python模拟鼠标键盘点击自动化


    首先在玩动物餐厅的时候发现他需要连续点击才能完成任务,而这有是一项枯燥而复杂的任务,所以我就想到用python的鼠标模拟来自动完成

    Python中模拟键盘和鼠标最著名的模块是:pymouse和pykeyboard。一次安装两个模块比较麻烦,而有一个库整合了这两个模块,而且能支持跨平台操作,这个库叫PyUserInput,通过安装PyUserInput就可以直接得到pymouse和pykeyboard。

    所以这里我直接安装了PyUserInput这个库,安装的时候发生了点小插曲,意识pip版本不是最新版本,使用python -m pip install --upgrade pip这条命令更新后提示已经没有这个库了,找了好多方法,最后重新导入pip(python3.5 -m ensurepip),使用另一种方法升的级

    首先关于pymouse模块,这个模块主要的命令如下

    # 鼠标操作
    from pymouse import PyMouse 
    import time
    # 初始化鼠标对象
    m = PyMouse()
    
    # 移动鼠标到(x,y)绝对地址
    m.move(200 ,200)
    
    # 鼠标中键垂直滚动 10 个单位
    m.scroll(10 ,0)
    
    # 鼠标点击(500,300),第三个参数代表键位,1是左键,2是右键,3是中键
    m.click(500, 300, 1)
    
    # 鼠标从当前位置拖拽到(500 , 300)
    m.drag(500 , 300)
    
    # 获得当前屏幕大小
    m.screen_size()
    
    # 获得鼠标当前位置
    m.position()
    
    

    然后是键盘操作,这个相对复杂一点

    # 键盘操作
    from pykeyboard import PyKeyboard
    
    # 初始化键盘对象
    k = PyKeyboard()
    
    # 键入Hello,world!
    k.type_string('Hello,world!')
    
    # 按下按键与释放按键
    k.press_key('H')  # 按下H键
    k.release_key('H')   # 释放H键
    # 使用tap_key函数直接实现按下和释放
    k.tap_key('H')
    k.tap_key('1',n=2,interval=5)  #支持自定义按下次数和其间隔时间,单位:秒
    
    #按住alt键
    k.press_key(k.alt_key)
    # tab键
    k.tap_key(k.tab_key)
    #释放alt键
    k.release_key(k.alt_key)
    #F5键
    k.tap_key(k.function_keys[5])
    #Home键
    k.tap_key(k.numpad_keys[ " Home ' ])
    #按数字5三次
    k.tap_key(k.numpad_keys[5],n=3)
    

    当然,在这里模拟点击用不上键盘的输入,我也只是简单的看了下

    现在进入正题
    在这里插入图片描述
    如上所示,动物餐厅这7个点是最主要的7个点,所以我只要针对这7个点做模拟点击就行

    首先使用m.position()找到鼠标要点击的位置,为了方便我将动物餐厅程序移到了左上角,通过一直循环对鼠标位置一直输出,找到点击的位置,并将其记录下来

    for i in range(50000000):
         print(m.position())
    

    通过模拟点击测试,点击前使用sleep让他等5秒,让我有时间将动物餐厅程序调出来,使用sleep函数让它每间隔0.1秒点击一次,防止点击过快导致程序反应不过来

     time.sleep(5)
     for i in range(1000):
         time.sleep(0.1)
         m.click(914,702)
    

    运行一段时间后我发现几个新问题,
    1.程序一旦运行起来,不停止我没办法做任何其他操作,包括停止它都不可以;鼠标的位置只能固定在那一个位置疯狂点击,点击太慢了效率又不行,我看不上;
    2.连续在同一个像素点点击,程序会自动检测异常,提示非法行为;
    3.很多小事情也需要点击,但这个比较容易解决,只要后面将餐厅员工升级就好了;

    随后我做了漫长的测试优化有了以下代码
    问题解决:
    1.每循环点击300次停下休息5秒,并作提示,我就有时间关闭程序等操作
    2.找到每个点击位置的大致范围,用random随机库的随机函数让每次点击的位置在一个范围内,而不是一个点,这样被检测的概率就会小很多,甚至可以点击半小时停下一段时间

    # 鼠标操作
    from pymouse import PyMouse 
    import time
    import random
    # 初始化鼠标对象
    m = PyMouse()
    
    time.sleep(3)
    for i in range(50000):
        print(i)
        time.sleep(0.05)#测试后改为0.05s点击一次效率提升
        m.click(random.randrange(315,335),random.randrange(620,645))      # 招揽客人
        if i%60 == 0 :  # 每点击60次宣传按钮,就对每个桌子进行一轮上菜操作
            m.click(random.randrange(100,120),random.randrange(305,330))  # 桌子1的位置点击
            time.sleep(0.1)  #间隔0.1s使点击合理化
            m.click(random.randrange(180,200),random.randrange(305,330))  # 桌子2
            time.sleep(0.1)
            m.click(random.randrange(265,285),random.randrange(305,330))  # 桌子3
            time.sleep(0.1)
            m.click(random.randrange(100,120),random.randrange(425,445))  # 桌子4
            time.sleep(0.1)
            m.click(random.randrange(180,200),random.randrange(425,445))  # 桌子5
            time.sleep(0.1)
            m.click(random.randrange(265,285),random.randrange(425,445))  # 桌子6
            time.sleep(0.1)
        if i%300 == 0:  # 每点击300次休息5秒让我能控制程序
            print('休息5s')
            time.sleep(5) 
    

    一个简单的自动化就完成了,虽然非常简单,但学以致用

    cpython模拟鼠标键盘操作基本函数从这个网页搬运过来的

    展开全文
  • ##实际运用,视频讲解视频传送门:点我##环境搭建python版本:python-2.7.16安装 pyUserInput(ps:python3.7我试了后装不上)```powershellpip install PyUserInput```速度很慢,需要耐心等待再装个`pip install ...

    ##实际运用,视频讲解

    视频传送门:点我

    ##环境搭建

    python版本:python-2.7.16安装 pyUserInput(ps:python3.7我试了后装不上)

    ```powershellpip install PyUserInput```

    速度很慢,需要耐心等待7678c5fc6bd139730c15fef92cf130a8dfe0e75e.png

    再装个`pip install pymouse`513ef1b58e290c6114f8d6518ec221a7ce12eb0b.png

    有说法是需要安装PyHook,不过2.7没装也能用(自测)ps:安装pywin32,若`pip install pywin32`不行可去 github项目,[pywin32](https://github.com/mhammond/pywin32)5c2e6c6c10189825b1115e24486d16d754ff0f5b.png

    9480f3167a841eb6053a25dddd487d536d28449e.png

    ###鼠标操作:

    ```pythonm.click(x,y,button,n) 鼠标点击 x,y 是坐标位置 button 1表示左键,2表示点击右键 n 点击次数,默认是1次,2表示双击m.move(x,y) –鼠标移动到坐标(x,y)x_dim, y_dim = m.screen_size() –获得屏幕尺寸```

    ###键盘操作:

    ```pythonk.type_string('Hello, World!') –模拟键盘输入字符串 k.press_key('H') –模拟键盘按H键 k.release_key('H') –模拟键盘松开H键 k.tap_key('H') –模拟点击H键 k.tap_key('H',n=2,interval=5) –模拟点击H键,2次,每次间隔5秒 k.tap_key(k.function_keys[5]) –点击功能键F5 k.tap_key(k.numpad_keys[5],3) –点击小键盘5,3次```

    ###联合按键模拟

    例如同时按alt+tab键盘

    ```pythonk.press_key(k.alt_key) –按住alt键 k.tap_key(k.tab_key) –点击tab键 k.release_key(k.alt_key) –松开alt键```

    ###1.PyMouse的基本方法

    ```python1)drag(self, x, y)把鼠标移动到x,y坐标处,是一个拖拽动作,不只是移动2) move(self, x, y)把鼠标移动到x,y3)position(self)得到鼠标的当前位置,并返回坐标x,y4)press(self, x, y, button=1)鼠标按下不松开x,y的坐标点,button表示左右键5)release(self, x, y, button=1)松开指定位置的鼠标6)scroll(self, vertical=None, horizontal=None, depth=None)生成最多三个维度的鼠标滚动事件:垂直、水平和深度(仅限于Mac)。这些参数的值可以是正数或负数(浮点数或整数)。请参阅以下内容:Vertical: + Up, - DownHorizontal: + Right, - LeftDepth: + Rise (out of display), - Dive (towards display)滚动鼠标的滚轮,在三个方向上移动7)click(self, x, y, button=1, n=1)在给定的x,y上单击鼠标按钮n次。button定义为1=左,2=右,3=中间。```

    ###2.PyKeyboard的基本方法

    ```python1)press_key(self, character='')按给定的字符键。2)release_key(self, character='')释放给定的字符键。3) press_keys(self, characters=[])按给定的字符键。4)tap_key(self, character='', n=1, interval=0)按下并释放给定的字符键n次。#点击功能键F5pyk.tap_key(pyk.function_keys[5])#点击小键盘5,6次pyk.tap_key(pyk.numpad_keys[5],6)#点击回车键pyk.tap_key(k.enter_key)#联合按键模拟#同时按alt+tab键盘pyk.press_key(pyk.alt_key)#按住alt键pyk.tap_key(pyk.tab_key)#点击tab键pyk.release_key(pyk.alt_key)#松开alt键5)type_string(self, char_string, interval=0)一种用于键入较长字符串的方便方法。生成尽可能少的移位事件。```

    ##简单的程序进行测试

    **需要管理员权限启动!!!**

    ###1、获取鼠标当前位置,并打印坐标x,y

    ```pythonimport timefrom pymouse import PyMousefrom pykeyboard import PyKeyboardm = PyMouse() k = PyKeyboard()time.sleep(5)while True:x,y = m.position()print "x:",x,",y:",ytime.sleep(3)```

    ###2、前后走动,一定时间后按下某键

    ```python#coding=utf-8#适合窗口化游戏1280*800import timefrom pymouse import PyMousefrom pykeyboard import PyKeyboardm = PyMouse() k = PyKeyboard()#睡眠5s,给你准备时间time.sleep(5)#锁定视角#k.tap_key("y")#time.sleep(0.5)#判断是否放Rflag = 0#循环while True:#右击这个坐标m.click(1138,371,2,1)time.sleep(4)#右击这个坐标m.click(820,631,2,1)time.sleep(4)if flag > 13:k.tap_key('w')time.sleep(5)k.tap_key('d')time.sleep(0.5)k.tap_key('r')time.sleep(3)k.tap_key('w')time.sleep(2.5)flag = 0flag = flag + 1```

    参考文章:[PyUserInput操作说明](https://blog.csdn.net/jjjndk1314/article/details/80621419)[Pyuserinput 基础操作(鼠标键盘模拟)](https://www.jianshu.com/p/7e0158b99497)

    展开全文
  • 对于Windows下的模拟python一般是采用win32api,此外C++等也可以实现类似的功能,但是python简洁很多,适合不太熟悉Windows变成的人。 其实一开始是找到一个别人写的项目想直接用的,可惜运行失败,而且有部分...
  • 使用pymouse模拟鼠标操作(1)安装过程支撑插件下载pywin32-221.win-amd64-py3.6.exe,然后安装安装离线插件pip install pyHook-1.5.1-cp36-cp36m-win_amd64.xiwhlpymouse插件现在安装pip install PyMouse。...
  • click(on_element=None) ——单击鼠标左键 click_and_hold(on_element=None) ——点击鼠标左键,不松开 context_click(on_element=None) ——点击鼠标右键 double_click(on_element=None) ——双击鼠标左键 drag...
  • python版本:python-2.7.16 安装 pyUserInput(ps:python3.7我试了后装不上) pip install PyUserInput 速度很慢,需要耐心等待 再装个 pip install pymouse 有说法是需要安装PyHook,不过2.7没装也能用(自测)...
  • python3实战–selenium自动化输入手机、selenium自动化百度搜索、拖拽阿里云滑动验证、模拟鼠标双击、模拟鼠标拖拽 参考:https://www.cnblogs.com/win0211/p/12107003.html ...# -*- coding: utf-8 -*- ...
  • #本文介绍如何通过ActionChains模块中的driag_and_drop方法模拟鼠标拖拽 实现拖拽一个元素loc1到另一个元素loc2 #代码如下: // ActionChains import time from selenium import webdriver from selenium.webdriver ...
  • Python 模拟键盘鼠标操作实战教程

    千次阅读 2020-06-27 22:34:08
    这种情况下,Python也不是完全没有办法的,我们可以采用模拟键盘和鼠标的方式实现自动化。 Python模拟键盘和鼠标最著名的模块是:pymouse和pykeyboard。一次安装两个模块比较麻烦,而有一个库整合了这两个模块,...
  • 使用python pynput完全模拟鼠标操作

    千次阅读 2018-12-13 10:52:27
    总是有些事情需要重复性机械性的操作,想要设计代码去做,有些程序又不给接口,这时最简单的方法就是,模拟鼠标操作!  除了不能生孩子,其他都能做的python! 一搜 果然有模拟鼠标键盘操作的库pynput 但是网上的各种...
  • PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,PyAutoGUI可以模拟鼠标的移动、点击、拖拽,键盘按键输入、按住操作,以及鼠标+键盘的热键同时按住等操作,可以说手能动的都...
  • python 捕捉和模拟鼠标键盘操作

    万次阅读 多人点赞 2017-09-23 00:09:58
    这就要求掌握使用python捕捉和模拟键盘操作了,于是我查阅了网上诸多资料,终于实现了这个功能,特此记录下来方便以后复习。 使用的python版本为:3.6.1,使用anaconda配置的python环境 参考博文首先安装pyautogui...
  • 使用之前需要引入 ActionChains 类。...import ActionChains ActionChains类提供的鼠标常用方法: perform():执行所有 ActionChains 中存储的行为。 context_click():右击 double_click():双击 drag_and_dro...

空空如也

空空如也

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

python模拟鼠标拖拽

python 订阅