Skip to main content

Hook and simulate keyboard events on Windows and Linux

Project description

Take full control of your keyboard with this small Python library. Hook global events, register hotkeys, simulate key presses and much more.

  • Global event hook (captures keys regardless of focus).

  • Simulates key presses.

  • Complex hotkey support (e.g. Ctrl+Shift+A followed by Alt+Space) with controllable timeout.

  • Maps keys as they actually are in your layout, with full internationalization support (‘Ctrl+ç’).

  • Events automatically captured in separate thread, doesn’t block main program.

  • Pure Python, no C modules to be compiled.

  • Zero dependencies. Trivial to install and deploy.

  • Works with Windows and Linux (if you have a Mac, pull requests are welcome).

  • Python 2 and Python 3.

  • Tested and documented.

  • Doesn’t break accented dead keys (I’m looking at you, pyHook)

  • Mouse support coming soon.

Example:

import keyboard

# Press PAGE UP then PAGE DOWN to type "foobar".
keyboard.add_hotkey('page up, page down', lambda: keyboard.write('foobar'))

# Blocks until you press esc.
wait('esc')

This program makes no attempt to hide itself, so don’t use it for keyloggers.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

keyboard-0.6.2.zip (18.7 kB view details)

Uploaded Source

File details

Details for the file keyboard-0.6.2.zip.

File metadata

  • Download URL: keyboard-0.6.2.zip
  • Upload date:
  • Size: 18.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for keyboard-0.6.2.zip
Algorithm Hash digest
SHA256 3f96257b2a4f05fab0609cbcdfb80e9a88d0c769cf8e658b9f1b48fa20a22b57
MD5 8d3e62769bf74b0be78eaf51edd6a8cb
BLAKE2b-256 9c63a1e080b21916f6b75ee5aaf73906c41cf0cf5057e65b57162f2c4e24e6e9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page