28 กุมภาพันธ์ 2558

Published 2/28/2558 by with 0 comment

ควบคุมเมาส์และคีย์บอร์ดใน Python

สวัสดีผู้อ่านทุกท่านครับ บทความนี้จะพาผู้อ่านไปควบคุมเมาส์และคีย์บอร์ดในภาษา Python กันครับ การควบคุมเมาส์และคีย์บอร์ดสามารถทำได้โดยใช้ pyuserinput  ครับ

pyuserinput เป็นไลบรารีในภาษา Python ที่สามารถควบคุมเมาส์และคีย์บอร์ดได้ รองรับทั้ง Python 2 , Python 3 เป็น GPL3 รองรับทุกระบบปฏิบัติการ แต่มีความต้องการไลบรารีตามระบบปฎิบัติการดังต่อไปนี้

  • Linux - Xlib

  • Mac - Qwartz, AppKit

  • Windows - pywin32, pyHook


เมื่อติดตั้งไลบรารีที่ต้องการแล้วสามารถติดตั้ง pyuserinput ได้ด้วยคำสั่ง:
pip install PyUserInput

เมื่อติดตั้งเสร็จแล้วในไลบรารี pyuserinput จะประกอบไปด้วยไลบรารี

  • PyKeyboard เป็นไลบรารีสำหรับใช้ควบคุมคีย์บอร์ด

  • PyMouse เป็นไลบรารีสำหรับใช้ควบคุมเมาส์


ตัวอย่างการใช้งาน
PyKeyboard

[python]
from pykeyboard import PyKeyboard #เรียกใช้งาน PyKeyboard
k = PyKeyboard()
k.type_string('Hello, World!') #สั่งให้พิมพ์ประโยค Hello, World!
[/python]

ดูเพิ่มเติม PyKeyboard ได้ที่ https://github.com/SavinaRoja/PyUserInput

PyMouse

[python]
from pymouse import PyMouse

m = PyMouse()
m.position() #รับพิกัดตำแหน่งของลูกศรเมาส์ปัจจุบัน
m.move(x,y) #ย้ายเมาส์ไปยังพิกัดที่ต้องการ
m.click(x,y) #สั่งคลิกที่พิกัดที่ต้องการ
m.press(x,y) #กดปุ่มที่เมาส์
m.release(x,y) #ปล่อยปุ่มเมาส์
m.screen_size() #รับค่าขนาดหน้าจอ
[/python]

ตัวอย่างง่าย ๆ
หน้าจอคอมผมกว้าง 1366 X 768 ผมจะลองเขียนโปรแกรมปิดหน้าจอที่ปุ่ม X ด้านขวาบนสุดของหน้าจอดูครับ (โปรดเปิดหน้าต่างโปรแกรมให้เต็มหน้าจอและควรเป็นโปรแกรมที่ไม่ได้ใช้งานครับ เพราะงานอาจหายได้) ผมเลยลองใน Python IDE GUI ของ Python เอง

[python]
>>> from pymouse import PyMouse
>>> m = PyMouse()
>>> m.move(200, 200)
>>> m.screen_size()
(1366, 768)
>>> m.position()
(1346, 9)
>>> m.click(1346, 9, 1) #สั่งให้คลิกที่พิกัด 1346, 9 โดยคลิก 1 ครั้ง
[/python]

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)