19

I need to know which key is being pressed right now. I'm not looking to capture some specific keys to trigger an event or anything like that,

I want to know which keys are pressed now and display a list of them.

I also need to capture special keys like F1 ... F12, shift, alt, home, windows, etc. Basically all keys on the keyboard.

How do I do this in python? How do I capture keyboard events?

Related

EDIT

Just so you know I'm not trying to make a keylogger. I'm trying to make a diagnoses tool (I split water on my laptop and the keyboard is starting to get crazy sometime!!)

Community
  • 1
  • 1
hasen
  • 161,647
  • 65
  • 194
  • 231

3 Answers3

6

PyKeylogger mentioned in the related question might do the job.

Community
  • 1
  • 1
jfs
  • 399,953
  • 195
  • 994
  • 1,670
4

The easiest way to do something like this, if you're not too fussy, is to bring in a GUI toolkit such as pygame or wxPython. For example, run the wxPython Demo, then go to the demo for KeyEvents.

John Fouhy
  • 41,203
  • 19
  • 62
  • 77
2

I found the answer using a link in a related question to pyHook:

pyHook tutorial: capturing keypress events

Community
  • 1
  • 1
hasen
  • 161,647
  • 65
  • 194
  • 231