logo

כיצד ליצור קליקר אוטומטי של Python

מהו אוטומטי קליקר?

Auto clicker היא תוכנה שבה נכתב סקריפט קוד כלשהו, ​​ובהתבסס על הקוד, אם משתמש כלשהו מגדיר מקש נלחץ, אז העכבר יילחץ אוטומטית. ב- Python, אנו יכולים ליצור פרויקט קליקים אוטומטי באמצעות מודול pynput שניתן להתקין על ידי פקודת pip.

אנו יכולים לחלק את קוד הלחיצה האוטומטית לשלבים הבאים:

1. ייבוא ​​מודולים נדרשים

אנו נייבא את מודול הזמן והחוט, ואנחנו נייבא את מודול ה-Button, Controller מתת-מודול העכבר של pynput. באותו אופן, נייבא את המודולים Listener ו-Keycode מתת-מודול המקלדת של pynput.

"מה ההבדל בין אריה לנמר"

דוגמא:

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

2. אתחול המשתנים

בחלק זה, נאתחל ארבעה משתנים אשר שימושיים מאוד לביצוע התוכנית.

    כפתור כיוון: משתנה זה יחליט על איזה צד כפתור נרצה ללחוץ (ימין, שמאל או אמצעי).זמן עיכוב: משתנה זה מגדיר את הזמן בין שני קליקים עוקבים.startStopButton: משתנה זה מגדיר באיזה מקש או כפתור ישמש כדי להתחיל ולעצור את פרויקט הלחיצה האוטומטית.לחצן terminate: משתנה זה מגדיר את הכפתור שישמש לסיום התוכנית.

דוגמא:

 buttonDirection= Button.right delayTime= 0.001 startStopButton = KeyCode(char='s') terminateButton= KeyCode(char='x') 

3. יצירת הכיתה

בחלק זה, ניצור את המחלקה שמרחיבה את מחלקת ה-thread כדי לבדוק אם בוצעה לחיצת העכבר או לא.

דוגמא:

 class ClickTheMouse(threading.Thread): def __init__(self, delayTime, buttonDirection): super(ClickTheMouse, self).__init__() self.delayTime = delayTime self.buttonDirection = buttonDirection self.running = False self.program_running = True 

4. בחלק זה, נגדיר כמה שיטות לשלוט בלחיצות העכבר באמצעות שרשורים חיצוניים.

דוגמא:

 def startMouseClick(self): self.running = True def stopMouseClick(self): self.running = False def exitScript(self): self.stopMouseClick() self.program_running = False 

5. בסעיף זה, הגדרנו את השיטה שתבצע את הקוד המלא באמצעות שתי לולאות מקוננות. לולאות אלו יסתיימו כאשר משתנים מוגדרים כ-false. אחרת, הם ימשיכו להמשיך בתוכנית.

דוגמא:

 def run(self): while self.program_running: while self.running: mouse.click(self.buttonDirection) time.sleep(self.delayTime) time.sleep(0.1) 

6. בחלק זה, ניצור את השרשור ללחיצת עכבר ולאחר מכן נתחיל את השרשור.

דוגמא:

אפליקציות נסתרות
 mouse = Controller() clickThread = ClickTheMouse(delayTime, buttonDirection) clickThread.start() 

7. זהו הסעיף האחרון שבו אנו מגדירים את הפונקציה עבור לחיצה על המקלדת. אם מקש כלשהו נלחץ, הוא עובר כארגומנט בפונקציה זו ובודק עם מקרים שונים.

אם זה מקש startStop, התוכנית תופעל או תופסק. אם זה המפתח המסיים, התוכנית תופסק.

דוגמא:

 def on_press(key): if key == startStopButton: if clickThread.running: clickThread.stopMouseclick() else: clickThread.startMouseclick() elif key == terminateButton: clickThread.exitScript() listener.stop() with Listener(on_press=on_press) as listener: listener.join() 

דוגמה מלאה:

 import time import threading from pynput.mouse import Button, Controller from pynput.keyboard import Listener, KeyCode delayTime = 0.001 buttonDirection = Button.right startStopButton = KeyCode(char='s') terminateButton = KeyCode(char='x') class ClickTheMouse(threading.Thread): def __init__(self, delayTime, buttonDirection): super(ClickTheMouse, self).__init__() self.delayTime = delayTime self.buttonDirection = buttonDirection self.running = False self.program_running = True def startMouseclick(self): self.running = True def stopMouseClick(self): self.running = False def exitScript(self): self.stopMouseClick() self.program_running = False def run(self): while self.program_running: while self.running: mouse.click(self.buttonDirection) time.sleep(self.delayTime) time.sleep(0.1) mouse = Controller() clickThread = ClickTheMouse(delayTime, buttonDirection) clickThread.start() def on_press(key): if key == startStopButton: if clickThread.running: clickThread.stopMouseClick() else: clickThread.startMouseclick() elif key == terminateButton: clickThread.exitScript() listener.stop() with Listener(on_press=on_press) as listener: listener.join() 

הֶסבֵּר:

בקוד שלמעלה, אתחלנו את מקשי ההתחלה והעצירה בתור 's' ואת מקש הסיום בתור 'x'. כאשר נריץ את הסקריפט python ואם נזין 's', אז אוטומטית, בכל פעם שנזיז את העכבר על המסך, הוא ייעשה קליק ימני בהשהיה של 0.001 שניות או אלפית שנייה אחת.

אנו יכולים לשנות את הפונקציונליות של לחיצת עכבר בסעיף 2, שבו נוכל להשתמש בתכונה Button.left או Button.center כדי לשנות את כיוון הלחיצה של העכבר.

טופל פיתון ממוין

אם ברצוננו לראות את לחיצת העכבר בקלות, נוכל לשנות את זמן ההשהיה לגבוה יותר כדי לראות את הלחיצה בפועל. בקוד זה, כאשר לא נזיז את סמן העכבר על המסך, אז הוא לא ילחץ. זה יעבוד רק כאשר נזיז את הסמן על המסך.