在python中创建一个基本的自动点击器

时间:2017-03-18 17:47:59

标签: python

我想创建一个非常简单的自动点击器,它将占据鼠标的位置,只要“有效”为真且处于“输入”的速度(每秒点击次数),就会点击该位置

我已经看到这个代码浮动,但它不符合我的需要

import win32api, win32con
def click(x,y):
    win32api.SetCursorPos((x,y))
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
click(10,10)

我希望代码看起来像这样,

import library 

input = 5 ## in clicks per second

if (some key) is held:
    active = True

if (some key) is released:
    active = False


while active:
     *gets position of mouse*
     *clicks at that position at input's speed (5)

如果有一个选项可以点击屏幕的正中心,那也很好。

2 个答案:

答案 0 :(得分:2)

尝试使用pyautogui。我在几个项目中使用过它。它具有巨大的功能,编码更少。例如,如果要单击屏幕中间,只需执行以下操作:

import pyautogui
width, height = pyautogui.size()
pyautogui.click(width/2, height/2)

在您的情况下,您可以使用时间模块来同步操作。

这是cheat sheet of pyautogui

答案 1 :(得分:0)

这是一个很好的问题,但我认为你可以这样做:

import win32api, win32con
import time

click_speed = int(input("Put your cps here"))
speed = 1 / click_speed
def click(x,y):
    time.sleep(speed)
    win32api.SetCursorPos((x,y))
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
   win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
click(10,10)