我想製作一個python腳本,可以在後臺運行,但在mouseevent或keyevent發生時打印文本。是否有任何庫/內置功能來實現這一點?或者我可以調用任何系統命令來獲取此信息?作爲根是沒有問題的。我怎樣才能捕捉mouseevents和keyevents在Linux上使用python背景
7
A
回答
11
我想,你可能會使用Python綁定evdev:http://packages.python.org/evdev/index.html。在教程中,他們舉一個例子鍵盤,但它應該對鼠標事件是類似的:
>>> from evdev import InputDevice, categorize, ecodes
>>> from select import select
>>> dev = InputDevice('/dev/input/event1')
>>> print(dev)
device /dev/input/event1, name "Dell Dell USB Keyboard", phys "usb-0000:00:12.1-2/input0"
>>> while True:
... r,w,x = select([dev], [], [])
... for event in dev.read():
... if event.type == ecodes.EV_KEY:
... print(categorize(event))
... # hitting a and holding space
key event at 1337016188.396030, 30 (KEY_A), down
key event at 1337016188.492033, 30 (KEY_A), up
key event at 1337016189.772129, 57 (KEY_SPACE), down
key event at 1337016190.275396, 57 (KEY_SPACE), hold
key event at 1337016190.284160, 57 (KEY_SPACE), up
2
看看pynput,例如:
from pynput.keyboard import Key, Listener
#defining function to print when key is pressed
def on_press(key):
print('{0} pressed'.format(
key))
#defining function to print when key is released
def on_release(key):
print('{0} release'.format(
key))
if key == Key.esc:
# Stop listener
return False
# Collect events until released
with Listener(
on_press=on_press,
on_release=on_release) as listener:
listener.join()
相關問題
- 1. 我怎樣才能使用CSS只有這樣的背景?
- 2. 我怎樣才能在Python
- 3. 我怎樣才能在Python
- 4. 我怎樣才能在Python
- 5. 我怎樣才能在Python
- 6. 我怎樣才能在Python
- 7. 我怎樣才能在python
- 8. 我怎樣才能在Python
- 9. 我怎樣才能在Python
- 10. 我怎樣才能在Python
- 11. 我怎樣才能捕捉請求數據在靜態列表
- 12. 我怎樣才能讓我的背景顯示在JavaScript的CSS
- 13. 我怎樣才能讓我的透明div背景在IE6,7,8
- 14. 我怎樣才能「捕捉」行動編輯odoo
- 15. 我怎樣才能捕捉圖像畫廊的不一系列
- 16. 我怎樣才能使一個背景圖像scalebale
- 17. 我怎樣才能得到Python的單元測試不捕捉異常?
- 18. 我怎樣才能中心div在視差背景圖像
- 19. 我怎樣才能得到背景顯示在底部兩行
- 20. 我怎樣才能在listpicker背景圖片添加到FullModeItemTemplate WP7
- 21. 我怎樣才能使用JQuery和PHP
- 22. 我怎樣才能讓我的CSS背景小
- 23. 我怎樣才能實時捕捉一些連續的日誌和grep文字?
- 24. 我怎樣才能正確捕捉所有的子域(和重定向)與.htaccess?
- 25. 我怎樣才能用Python解析GeoJSON
- 26. 我怎樣才能在Python networkx
- 27. 我怎樣才能重新在Python
- 28. 我怎樣才能在Python3.2與Linux系統中使用opencv
- 29. 我怎樣才能安裝模塊使用ansible在linux中
- 30. 我怎樣才能使PHP
如此 - 就像一個鍵盤記錄? –
是的。 ...字符限制... – jett
您必須從'/ dev/input'中的設備讀取輸入事件。 –