欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Python實現(xiàn)自動點擊器

 更新時間:2023年10月27日 07:40:06   作者:跡憶客  
顧名思義,Python 中的自動點擊器是一個簡單的 Python 應(yīng)用程序,它根據(jù)用戶要求重復(fù)單擊鼠標(biāo), 不同的參數(shù)可以根據(jù)用戶進行更改,下面我們就來看看具體實現(xiàn)方法吧

顧名思義,Python 中的自動點擊器是一個簡單的 Python 應(yīng)用程序,它根據(jù)用戶要求重復(fù)單擊鼠標(biāo)。 不同的參數(shù),如速度、頻率和位置,可以根據(jù)用戶進行更改。

Python 有不同的模塊可用于控制鍵盤、鼠標(biāo)等設(shè)備。因此,我們可以使用這些模塊輕松地在 Python 中創(chuàng)建自動點擊器。

本篇文章將介紹在 Python 中創(chuàng)建自動答題器的不同方法。

使用 pyautogui 模塊在 Python 中創(chuàng)建自動點擊器

pyautogui 模塊可以創(chuàng)建控制設(shè)備的鼠標(biāo)和鍵盤的腳本。

我們可以使用 pyautogui.click() 函數(shù)來單擊鼠標(biāo)。 我們可以使用 pyautogui.moveTo() 函數(shù)預(yù)先將鼠標(biāo)移動到所需位置,并指定光標(biāo)的坐標(biāo)。

要使用這些函數(shù)創(chuàng)建自動點擊器,我們將移動鼠標(biāo)并運行 for 循環(huán)來執(zhí)行每次迭代的 pyautogui.click() 函數(shù)。 我們還會在每次點擊之前稍微延遲以使其可見。

我們將使用 time 模塊中的 sleep() 函數(shù)來進行延遲。

我們在下面的代碼中實現(xiàn)自動點擊器的邏輯。

import pyautogui
import time
pyautogui.moveTo(600, 800)
for i in range(20):
    time.sleep(0.1)
    pyautogui.click()

在上面的示例中,我們將光標(biāo)移動到坐標(biāo)(600,800)并使用 click() 函數(shù)單擊鼠標(biāo) 20 次。

使用 win32api 在 Python 中創(chuàng)建自動點擊器

win32api 用于控制和自動化 Windows COM 對象。 我們可以使用 win32con 模塊中的這些對象并模擬鼠標(biāo)單擊。

為此,我們使用 win32api.mouse_event 函數(shù)兩次,一次用于 win32con.MOUSEEVENTF_LEFTDOWN,另一次用于 win32con.MOUSEEVENTF_LEFTDOWN 來模擬鼠標(biāo)單擊。

我們將使用 win23api.SetCursorPos() 函數(shù)將光標(biāo)的位置設(shè)置為所需的坐標(biāo)。 然后,我們將使用與之前方法類似的方法在 Python 中創(chuàng)建自動點擊器。

請參閱下面的代碼。

import win32api, win32con
import time
win32api.SetCursorPos((600,800))
for i in range(20):
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,600,800,0,0)
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,600,800,0,0)
    time.sleep(0.1)

使用 pynput 模塊在 Python 中創(chuàng)建自動點擊器

我們還有 pynput 用于在 Python 腳本中自動執(zhí)行鼠標(biāo)和鍵盤操作。 此方法與前兩種方法不同,因為我們將創(chuàng)建一個具有創(chuàng)建自動點擊器所需功能的類。

我們將創(chuàng)建一個類,當(dāng)按下特定鍵時,它將充當(dāng)自動點擊器。 將分配另一個鍵來停止點擊。

我們需要導(dǎo)入 pynput.mouse 和 pynput.keyboard 模塊。

創(chuàng)建的類將擴展為threading.Thread類,以便我們可以控制具有不同功能的線程。

在類的 __init__ 方法中,我們將像之前一樣指定每次單擊之間的輕微延遲,并提到我們將使用 Button.Left 對象單擊鼠標(biāo)左鍵。

線程將繼續(xù)運行,直到按下停止點擊的鍵為止。 我們將使用 threading.Thread 類的 start() 方法來開始單擊。

在 running() 方法中,我們還將使用 Controller 類對象。

為了啟動和停止線程,我們將創(chuàng)建一個函數(shù)。 Listener() 函數(shù)將在使用 on_press 參數(shù)按下按鍵時執(zhí)行定義的函數(shù)。

這個邏輯在下面的代碼中實現(xiàn)。

import time
import threading
from pynput.mouse import Button, Controller
from pynput.keyboard import Listener, KeyCode

start_end = KeyCode(char='a')
exit_key = KeyCode(char='z')

class auto_clicker_class(threading.Thread):
    def __init__(self):
        super(auto_clicker_class, self).__init__()
        self.delay = 0.1
        self.button = Button.left
        self.running = False
        self.program_run = True
    def begin_clicking(self):
        self.running = True
    def clicking_stop(self):
        self.running = False
    def exit(self):
        self.clicking_stop()
        self.program_run = False
    def run(self):
        while self.program_run:
            while self.running:
                mouse_ob.click(self.button)
                time.sleep(self.delay)
            time.sleep(0.1)

mouse_ob = Controller()
t = auto_clicker_class()
t.start()

def fun(k):
    if k == start_end:
        if t.running:
            t.clicking_stop()
        else:
            t.begin_clicking()
    elif k == exit_key:
        t.exit()
        listener.stop()

with Listener(on_press=fun) as listener:
    listener.join()

總結(jié)

我們在本篇文章中討論了自動點擊器。 前兩種方法相對簡單,因為我們使用 for 循環(huán)重復(fù)執(zhí)行一個函數(shù)多次來模擬鼠標(biāo)單擊。

最后一種方法在 Python 中創(chuàng)建一個適當(dāng)?shù)淖詣狱c擊器腳本,可以根據(jù)鍵盤上按下的鍵開始和停止點擊。

到此這篇關(guān)于基于Python實現(xiàn)自動點擊器的文章就介紹到這了,更多相關(guān)Python點擊器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python Matplotlib條形圖之垂直條形圖和水平條形圖詳解

    Python Matplotlib條形圖之垂直條形圖和水平條形圖詳解

    這篇文章主要為大家詳細(xì)介紹了Python Matplotlib條形圖之垂直條形圖和水平條形圖,使用數(shù)據(jù)庫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • python3 os進行嵌套操作的實例講解

    python3 os進行嵌套操作的實例講解

    在本篇文章里小編給大家整理了關(guān)于python3 os進行嵌套操作的實例內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2020-11-11
  • python3?queue多線程通信

    python3?queue多線程通信

    這篇文章主要介紹了python3?queue多線程通信,??Queue???對象已經(jīng)包含了必要的鎖,所以你可以通過它在多個線程間多安全地共享數(shù)據(jù),更多相關(guān)內(nèi)容需要的朋友可以參考一下下文文章內(nèi)容
    2022-07-07
  • python 如何對Series中的每一個數(shù)據(jù)做運算

    python 如何對Series中的每一個數(shù)據(jù)做運算

    這篇文章主要介紹了python 實現(xiàn)對Series中的每一個數(shù)據(jù)做運算操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python內(nèi)置debug庫pdb用法示例詳解

    Python內(nèi)置debug庫pdb用法示例詳解

    這篇文章主要介紹了Python內(nèi)置debug庫pdb用法的相關(guān)資料,Python的內(nèi)置調(diào)試器pdb可以有效幫助開發(fā)者掌握程序執(zhí)行流程和變量狀態(tài),通過插入pdb.set_trace()設(shè)置斷點,或直接從命令行啟動pdb,可以進入交互式調(diào)試模式,需要的朋友可以參考下
    2024-11-11
  • ansible-playbook實現(xiàn)自動部署KVM及安裝python3的詳細(xì)教程

    ansible-playbook實現(xiàn)自動部署KVM及安裝python3的詳細(xì)教程

    這篇文章主要介紹了ansible-playbook實現(xiàn)自動部署KVM及安裝python3的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • python+Django實現(xiàn)防止SQL注入的辦法

    python+Django實現(xiàn)防止SQL注入的辦法

    這篇文章主要介紹了python+Django實現(xiàn)防止SQL注入的辦法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 淺析python多線程中的鎖

    淺析python多線程中的鎖

    這篇文章主要介紹了淺析python多線程中的鎖,鎖由Python的threading模塊提供,并且它最多被一個線程所持有,當(dāng)一個線程試圖獲取一個已經(jīng)鎖在資源上的鎖時,該線程通常會暫停運行,直到這個鎖被釋放,需要的朋友可以參考下
    2023-07-07
  • python操作excel之openpyxl模塊讀寫xlsx格式使用方法詳解

    python操作excel之openpyxl模塊讀寫xlsx格式使用方法詳解

    這篇文章主要介紹了python操作excel之openpyxl模塊讀寫xlsx格式使用方法詳解,需要的朋友可以參考下
    2022-12-12
  • Python實現(xiàn)學(xué)校管理系統(tǒng)

    Python實現(xiàn)學(xué)校管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Python實現(xiàn)學(xué)校管理系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01

最新評論