首頁 > 軟體

Python實現連點器的範例程式碼

2022-03-02 13:01:15

啊,為此我特意準備了兩個程式,一個是用來測試的,一個是主程式。來看看吧

直接放連點器程式碼:

# 改進版
import pyautogui as pag
from time import sleep,time

pag.PAUSE = 0
def mouse():
    b = input('請問您需要點選多少下?')
    b = int(b)
    c = input('點選時需要左鍵還是右鍵?n左鍵請輸入0,右鍵輸入1:')
    c = int(c)
    print('請注意:您需要在8秒內將滑鼠移動到您需要連點的地方,然後不要動,等待開始快速連點。')
    sleep(8)
    print('開始點選!')
    x,y = pag.position()
    d = 'left'
    if c:
        d = 'right'
    e = time()
    for i in range(0,b):
        pag.click(x,y,button = d)
    f = time() - e
    input('完成。用時%f秒。' % f)

def key():
    print('請在以下支援的按鍵中挑選您需要的鍵。')
    for i in pag.KEYBOARD_KEYS:
        print(r'%s' % i,end=' ')
    b = input('n請輸入您需要快速輸入的字元:')
    if b in pag.KEYBOARD_KEYS:
        c = input('請輸入您需要多少次輸入:')
        c = int(c)
        print('請注意,您需要在8秒內切換到需要輸入的視窗。')
        sleep(8)
        print('開始工作!')
        e = time()
        for i in range(0,c):
            pag.press(b)
        f = time() - e
        input('完成。用時%f秒。' % f)
    else:
        input('您輸入的字元不屬於支援字元,請修改。')    
    
try:
    a = input('輸入您需要的服務(數位):n1:快速連點n2:快速輸入n>>> ')
    a = int(a)
    if a == 1:
        mouse()
    elif a == 2:
        key()
    else:
        input('不好意思,沒有找到您需要的服務。n')
except Exception as e:
    print('錯誤;n',e)

測試程式:

import pygame
from pygame.locals import *
from pygame.color import THECOLORS

pygame.init()
canvas = pygame.display.set_mode((600,600))
canvas.fill((255,255,255))
pygame.display.set_caption('TEST')

# 滑鼠點選次數
mouBut = 0
# 空格鍵按下次數
keyDow = 0

def handle():
    global mouBut,keyDow
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            exit()
        # 當按下滑鼠
        if event.type == MOUSEBUTTONDOWN:
            x,y = event.pos
            # 且在黑色矩形內
            if 200 <= x <= 400 and 200 <= y <= 400:
                mouBut += 1
        # 當按下鍵盤
        if event.type == KEYDOWN:
            # 且為空格鍵
            if event.key == K_SPACE:
                keyDow += 1

while True:
    # 每次重繪背景
    canvas.fill((255,255,255))
    # 滑鼠測試,繪製矩形
    pygame.draw.rect(canvas,(0,0,0),(200,200,200,200),0)
    # 繪製文字
    font1 = pygame.font.SysFont('Consolas',30)
    font2 = font3 = font4 = font5 = font6 = font1
    canvas.blit(font1.render('MouseButtonDown:%d' % mouBut,True,(0,0,0)),(10,10))
    canvas.blit(font2.render('KeyDown:%d' % keyDow,True,(0,0,0)),(10,50))
    canvas.blit(font3.render('CLICK ME!',True,(255,255,255)),(225,275))
    canvas.blit(font4.render('Click the black rectangle or press',True,(255,0,0)),(10,100))
    canvas.blit(font5.render('the spacebar!',True,(255,0,0)),(10,150))    
    canvas.blit(font6.render('By PanDaoxi',True,(0,0,255)),(200,500))
    handle()
    pygame.display.update()

由於發懶,沒仔細做主程式GUI。執行測試程式然後再開啟主程式,一旦開啟程式的時候手殘,就會涼涼。

在連點模式下,
我給程式設定了8秒的等待時間,這8秒內,你需要開啟測試程式,並把滑鼠放在需要點的地方。

程式會詢問你一些引數,

直接回答即可。如圖,按下確認鍵後,就開始等待那8秒,然後連點了。在此之前,我們看一下測試程式:

點選後,

程式點選很快,一下子點完。我用改進版試一下1000次。

再試試快速輸入,也是很快,用命令提示字元試就行,這個測試程式是針對物理鍵盤的。

突然一下,多了10個。因為數太小,所以被忽略不計,試試1000.

到此這篇關於Python實現連點器的文章就介紹到這了,更多相關Python實現連點器內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com