Klavye Tuşlarını Haritalamak

Selam arkadaşlar, bir sorum olacaktı.
Bilgisayarımdaki bir programda otomatik tuş basımları yaptırmak istiyorum, keyboard gibi kütüphaneleri denedim ama maalesef ilgili program bu girdileri algılamıyor. Araştırınca şunu farkettim, keyboard gibi kütüphaneler aslında ‘karakter bastırıyor’. Yani klavyedeki tuşa basıyormuş gibi çalışmıyor. Sadece ona verdiğim karakteri (string veriyi) bastırıyor. Benim yaptırmak istediğim ise karakterden ziyade doğrudan tuşa bastırmak. Karşılığı ne olursa olsun, sen o tuşa bas. Bunun için ise öncelikle klavyemin tuş kodlarını haritalamam gerekiyormuş. İşte tam olarak tıkandığım nokta burası, hangi araçla tarayacağımı bilmiyorum. Daha önce bu konuda uğraşmış birisi yardımcı olursa çok sevinirim.

Teşekkürler, iyi çalışmalar :slight_smile:

Bazı tuşların kodları varmış, ama her klavyede çalışmıyor tabii.

Link

Aslında tuş haritasını çıkarmak yerine öncelikle programa herhangi bir tuş girdisini algılatabilmek üzerine çalışmalıyım. Çünkü henüz bunu yapamıyorum, çıkardığım harita da görevin 2. aşamasında olacak :slight_smile:

Amaç ne ? tuşa basmak mı ? Keyboard olmadıysa başka kütüphane deneseydin? Ne yapmak istediğini kendin anlamamışsın, başkası nasıl anlasın.

import pyautogui

pyautogui.press("tuş")

import pydirectinput

pydirectinput.press("tuş")

Hahhahah :smile: O kadar basit bir adımı atlamışım ki, Python’ın başka bir programa müdahale edebilmesi için kullandığım kod editörünü yönetici olarak çalıştırmam gerekiyor tabii. İlk aşamayı geçmiş oldum, şimdi 2. aşamayı biraz daha araştırabilirim.

---- Sakin olur musun? :smile:

tamam ama insanlar vaktini ayırıp sorun çözmeye başlıyor ve konu anlaşılmaz olunca vakit boşa gidebiliyor ve ortada kod da yok. Belki daha kısa ve net yazılsa konular, daha hızlı doğru cevap alınabilir.

Ortada kod yok evet, çünkü sorun kodda değil. Geldiğim son noktayı ve amacımı anlatıyorum.

konudan bağımsız bişey sorucam. metin2 de tuşa mı basmaya çalışıyosun :smiley:

Evet şimdilik amaç bu. Gizli bir bilgi değil :slight_smile:

tamam konu metin2 ise :smiley: bu tarz bi kod işini görmesi lazım. linux kullandığım için kodu çalıştıramadım ama windows ta yönetici olarak çalıştırırsan çalışması lazım. hata olursa söylersin.

import pydirectinput, threading

def skill1():
    while True:
        pydirectinput.press("1")

def skill2():                           
    while True:
        pydirectinput.press("2")

def skill3():
    while True:
        pydirectinput.press("3")

def skill4():                           
    while True:
        pydirectinput.press("4")


def th():
    t1 = threading.Thread(target=skill1)
    t1.start()
    t2 = threading.Thread(target=skill2)
    t2.start()
    t3 = threading.Thread(target=skill3)
    t3.start()
    t4 = threading.Thread(target=skill4)
    t4.start()

th()


hangi karakter için yazılıyo bu kod ?