Files
Курнат Андрей 2315f25754 Initial QSfera import
2026-06-07 10:20:04 +03:00

77 lines
1.9 KiB
Python

from selenium.webdriver.common.keys import Keys
# Key mapping from Selenium's Keys to pyautogui's key names
# See:
# - https://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.keys
# - https://pyautogui.readthedocs.io/en/latest/keyboard.html?highlight=keys#keyboard-keys
KEY_MAP = {
Keys.ADD: 'add',
Keys.ALT: 'alt',
Keys.ARROW_DOWN: 'down',
Keys.ARROW_LEFT: 'left',
Keys.ARROW_RIGHT: 'right',
Keys.ARROW_UP: 'up',
Keys.BACKSPACE: 'backspace',
Keys.BACK_SPACE: 'backspace',
Keys.CLEAR: 'clear',
Keys.COMMAND: 'command',
Keys.CONTROL: 'ctrl',
Keys.DECIMAL: 'decimal',
Keys.DELETE: 'delete',
Keys.DIVIDE: 'divide',
Keys.DOWN: 'down',
Keys.END: 'end',
Keys.ENTER: 'enter',
Keys.EQUALS: '=',
Keys.ESCAPE: 'escape',
Keys.F1: 'f1',
Keys.F10: 'f10',
Keys.F11: 'f11',
Keys.F12: 'f12',
Keys.F2: 'f2',
Keys.F3: 'f3',
Keys.F4: 'f4',
Keys.F5: 'f5',
Keys.F6: 'f6',
Keys.F7: 'f7',
Keys.F8: 'f8',
Keys.F9: 'f9',
Keys.HELP: 'help',
Keys.HOME: 'home',
Keys.INSERT: 'insert',
Keys.LEFT: 'left',
Keys.LEFT_ALT: 'altleft',
Keys.LEFT_CONTROL: 'ctrlleft',
Keys.LEFT_SHIFT: 'shiftleft',
Keys.META: 'win',
Keys.MULTIPLY: 'multiply',
Keys.NUMPAD0: 'num0',
Keys.NUMPAD1: 'num1',
Keys.NUMPAD2: 'num2',
Keys.NUMPAD3: 'num3',
Keys.NUMPAD4: 'num4',
Keys.NUMPAD5: 'num5',
Keys.NUMPAD6: 'num6',
Keys.NUMPAD7: 'num7',
Keys.NUMPAD8: 'num8',
Keys.NUMPAD9: 'num9',
Keys.PAGE_DOWN: 'pagedown',
Keys.PAGE_UP: 'pageup',
Keys.PAUSE: 'pause',
Keys.RETURN: 'return',
Keys.RIGHT: 'right',
Keys.SEMICOLON: ';',
Keys.SEPARATOR: 'separator',
Keys.SHIFT: 'shift',
Keys.SPACE: 'space',
Keys.SUBTRACT: 'subtract',
Keys.TAB: 'tab',
Keys.UP: 'up',
}
def get_key(key):
if key in KEY_MAP:
return KEY_MAP[key]
return key