Linux'ta Python ile Mouse'u Kontrol Etmek

Merhaba Arkadaşlar. Size Python ile Linux'ta mouse'u nasıl kontrol edebileceğinizi ve karşımıza çıkabilecek olası sorunları nasıl çözebileceğinizi göstericem.Linux'ta mouse'u kontrol edebilmek için öncelikle pymouse modülümüzü kurmalıyız.Bunu pip ile basit bir şekilde yapabiliriz(Pip'nin ne olduğunu burada anlatmıştım).pymouse modülümüzü kurmak için;

sudo pip install pymouse
Aslında pymouse'uda içinde barındıran farklı bir kütüphane daha var ama ona şimdilik ihtiyaç duymadığımız için değinmiyicem.Birkaç sonraki yazımızda onada değinicez.Kurulum tamamlandıktan sonra kodlama aşamasına geçebiliriz.

İlk olarak tabikide kütüphanemizi dahil ederek başlıyoruz kodlamaya.

import pymouse
Burada şuna değinmek istiyorum, kütüphaneyi dahil ettiğiniz anda şöyle bir Xlib hatası ile karşılaşabilirsiniz.
Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/local/lib/python2.7/dist-packages/pymouse/init.py", line 95, in <module>
        from unix import PyMouse, PyMouseEvent
    File "/usr/local/lib/python2.7/dist-packages/pymouse/unix.py", line 17, in <module>
        from Xlib.display import Display
ImportError: No module named Xlib.display
Bu sorunla karşılaştığınızda paniklemeyin hemen doğal bi durum.Bilgisayarınızda Xlib kütüphanesinin yüklü olmadığını söylüyor.Kurmak içinde bu basit komutu çalıştırabilirsiniz;
$ sudo apt-get install python-xlib
Kurulumdan sonra kütüphaneyi dahil ettiğinizde hiçbir sorun kalmayacaktır.Yine bir sorun çıkıyorsa bu yazının altından yorum ile bildirin bi çözüm arayalım (:

Kütüphanemizi dahil ettikten sonra class'ımızı bir değişkene bağlıyoruz.

m = pymouse.PyMouse()
Bundan sonrada bütün işlemleri m değişkeni üzerinden yapıyoruz.

Örneğin ekranda mouse'un bulunduğu konumu almak için;

print m.position()
Bunun dışındaki diğer fonksiyonlar ise;

m.click(x,y) : Mouse ile ekran üzerinde herhangi bir noktaya tıklamanızı sağlar. x ve y olarak 2 farklı tam sayı argüman alır. m.move(x,y) : Mouse'u herhangi bir konuma tıklama yapmadan taşımanızı sağlar. x ve y olarak 2 farklı tam sayı argüman alır. m.position() : Mouse'un ekran üzerinde hangi noktada bulunduğunu gösterir.Herhangi bir argüman almaz. m.press(x,y) : Mouse'u ekranın herhangi bir noktasında basılı tutmak için kullanılır.x ve y olarak 2 farklı tam sayı argüman alır. m.release(x,y) : Mouse'u press fonksiyonu ile basılı tuttuğumuz noktadan çekmek istediğimiz noktaya kadar çekip bırakmak için kullanılır.x ve y olarak 2 farklı tam sayı argümanı alır. m.screen_size() : Bu fonksiyon herhangi bir mouse işlevi bulundurmaz sadece ekranın çözünürlüğünü dizi halinde çıktı verir.

Örnek uygulama : mouse.py

Kolay gelsin..


Tags: linux xlib, pymouse, pymouse xlib, pyseries, python linux mouse, python mouse, python mouse click, python xlib