Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีควบคุมเมาส์และคีย์บอร์ดของคุณโดยใช้ไลบรารี pynput ใน Python


แนะนำตัว

pynput ไลบรารีช่วยให้คุณควบคุมและตรวจสอบ/ฟังอุปกรณ์อินพุตของคุณ เช่น แป้นพิมพ์และเมาส์

pynput.mouse ให้คุณควบคุมและตรวจสอบเมาส์ได้ ในขณะที่ pynput.keyboard ให้คุณควบคุมและตรวจสอบแป้นพิมพ์ได้

ในบทความนี้ เราจะย้ายเคอร์เซอร์ไปยังตำแหน่งที่ต้องการ ทำการคลิกอัตโนมัติ และจำลองการกดแป้นพิมพ์จากแป้นพิมพ์

เพื่อไม่ให้เป็นการเสียเวลา เรามาเริ่มกันเลย

เริ่มต้นใช้งาน

ตั้งแต่ pynput โมดูลไม่ได้มาพร้อมกับ Python คุณจะต้องดาวน์โหลดและติดตั้งด้วยตนเองโดยใช้ pip package manager

ในการดำเนินการนี้ ให้เปิดเทอร์มินัลแล้วใช้คำสั่งด้านล่าง

pip install pynput

เมื่อดาวน์โหลดและติดตั้งไลบรารีเรียบร้อยแล้ว คุณก็พร้อมที่จะนำเข้าโมดูลต่างๆ ไปยังสคริปต์ Python ของคุณ

เนื่องจากเราจะนำเข้าโมดูลต่างๆ สำหรับทั้งแป้นพิมพ์และเมาส์ เราจะหารือเกี่ยวกับคำสั่งการนำเข้าในภายหลัง

การควบคุมเมาส์

ในการควบคุมและจำลองเมาส์ของคุณโดยใช้ Python คุณต้องนำเข้าโมดูลเมาส์จากไลบรารี pynput เนื่องจากเราจะจำลองการคลิกและการเคลื่อนไหวด้วย เราจะนำเข้าไปพร้อมกับโมดูล

from pynput.mouse import Button, Controller

อันดับแรก เราจะใช้วิธี Controller() เพื่อเลื่อนเมาส์ไปรอบๆ หน้าจอ

mouse = Controller()

ตอนนี้ หากคุณต้องการเลื่อนเมาส์ไปที่ตำแหน่งใดๆ บนหน้าจอ คุณเพียงแค่ระบุพิกัดของเมาส์

mouse.position = (50,60)

หากคุณต้องการดูว่าเมาส์ของคุณย้ายไปที่ใด คุณสามารถพิมพ์ออกมาได้

print('Current mouse position −> {0}'.format(mouse.position))

หากคุณต้องการเลื่อนเมาส์โดยสัมพันธ์กับตำแหน่งปัจจุบัน ให้ใช้ฟังก์ชันย้าย

mouse.move(30,15)

หากคุณต้องการจำลองการกดปุ่ม

mouse.press(Button.left)
mouse.release(Button.left)
mouse.press(Button.right)
mouse.release(Button.right)

สำหรับการดับเบิลคลิก ให้ใช้

mouse.click(Button.left, 2)

คุณยังสามารถจำลองการเลื่อนโดยใช้ pynput

mouse.scroll(0,2)

การดำเนินการนี้จะเลื่อนลงมาสองขั้นตอน พิกัด x ใช้เพื่อเลื่อนการเลื่อนจากซ้ายไปขวา และพิกัด y สำหรับบนลงล่าง

ตัวอย่าง

from pynput.mouse import Button, Controller
mouse = Controller()
mouse.position = (50,60)
print('Current mouse position −> {0}'.format(mouse.position))
mouse.move(30,15)
mouse.press(Button.left)
mouse.release(Button.left)
mouse.press(Button.right)
mouse.release(Button.right)
mouse.click(Button.left, 2)
mouse.scroll(0,2)

ด้วยวิธีการข้างต้น คุณสามารถจำลองรูปร่างการวาดบนสีโดยใช้เรขาคณิตพิกัดพื้นฐาน

การควบคุมแป้นพิมพ์

ประการแรก เรานำเข้าโมดูลและฟังก์ชันที่จำเป็น ในโมดูลแป้นพิมพ์ภายในไลบรารี pynput เราจะใช้ฟังก์ชันคีย์และตัวควบคุม

From pynput.keyboard import Key, Controller

เราจะใช้วิธีควบคุมเพื่อควบคุมแป้นพิมพ์และจำลองการกดแป้นพิมพ์

keyboard = Controller()

ตอนนี้ เพื่อจำลองการกดแป้นพิมพ์ เรามีวิธีการกดและปล่อย

keyboard.press('a')
keyboard.release('a')

ใช้ได้กับตัวอักษรทั้งหมด รวมทั้งตัวพิมพ์ใหญ่ สำหรับตัวพิมพ์ใหญ่ คุณเพียงแค่ใช้ “A” แทน “a”

คุณสามารถจำลองการกดแป้นอื่นๆ เช่น ctrl, alt, เว้นวรรค ฯลฯ ได้เช่นกัน

keyboard.press(Key.space)
keyboard.release(Key.space)
keyboard.press(Key.ctrl)
keyboard.release(Key.ctrl)

หากคุณต้องการจำลองการพิมพ์ประโยคหรือคำพร้อมกัน คุณสามารถใช้ฟังก์ชันพิมพ์ได้

keyboard.type('Hello World!!')

และนั่นคือวิธีควบคุมหรือจำลองอุปกรณ์แป้นพิมพ์ใน Python โดยพื้นฐานแล้ว

ตัวอย่าง

from pynput.keyboard import Key, Controller
keyboard = Controller()
keyboard.press('a')
keyboard.release('a')
keyboard.press(Key.space)
keyboard.release(Key.space)
keyboard.press(Key.ctrl)
keyboard.release(Key.ctrl)
keyboard.type('Hello World!!')

บทสรุป

ตอนนี้คุณรู้วิธีจำลองอุปกรณ์ป้อนข้อมูลด้วยแป้นพิมพ์และเมาส์โดยใช้ไลบรารี pynput ของ Python แล้ว

เมื่อใช้สิ่งนี้ คุณสามารถสร้างบอทอัตโนมัติที่ทำการคลิกในเกม clicker สร้างสแปมบอทที่ส่งข้อความรูปแบบต่างๆ ออกไปพร้อมกัน แอปพลิเคชันมีไม่จำกัด เนื่องจากคุณสามารถสร้างเครื่องมืออัตโนมัติแบบใดก็ได้โดยใช้วิธีนี้

โครงการขนาดเล็กของ SpamBot – https://github.com/SVijayB/Spam−botz

หากคุณต้องการอ่านเพิ่มเติมเกี่ยวกับ pynput และสำรวจฟังก์ชันอื่น ๆ ของ pynput คุณสามารถตรวจสอบเอกสารอย่างเป็นทางการได้ที่ -

https://pynput.readthedocs.io/en/latest/index.html.