-
-
Save AllanLRH/bb8a1473ede453e12d14cb47d66ecb0c to your computer and use it in GitHub Desktop.
Python win32api simple Vitual keystroke example
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #Giant dictonary to hold key name and VK value | |
| VK_CODE = {'backspace':0x08, | |
| 'tab':0x09, | |
| 'clear':0x0C, | |
| 'enter':0x0D, | |
| 'shift':0x10, | |
| 'ctrl':0x11, | |
| 'alt':0x12, | |
| 'pause':0x13, | |
| 'caps_lock':0x14, | |
| 'esc':0x1B, | |
| 'spacebar':0x20, | |
| 'page_up':0x21, | |
| 'page_down':0x22, | |
| 'end':0x23, | |
| 'home':0x24, | |
| 'left_arrow':0x25, | |
| 'up_arrow':0x26, | |
| 'right_arrow':0x27, | |
| 'down_arrow':0x28, | |
| 'select':0x29, | |
| 'print':0x2A, | |
| 'execute':0x2B, | |
| 'print_screen':0x2C, | |
| 'ins':0x2D, | |
| 'del':0x2E, | |
| 'help':0x2F, | |
| '0':0x30, | |
| '1':0x31, | |
| '2':0x32, | |
| '3':0x33, | |
| '4':0x34, | |
| '5':0x35, | |
| '6':0x36, | |
| '7':0x37, | |
| '8':0x38, | |
| '9':0x39, | |
| 'a':0x41, | |
| 'b':0x42, | |
| 'c':0x43, | |
| 'd':0x44, | |
| 'e':0x45, | |
| 'f':0x46, | |
| 'g':0x47, | |
| 'h':0x48, | |
| 'i':0x49, | |
| 'j':0x4A, | |
| 'k':0x4B, | |
| 'l':0x4C, | |
| 'm':0x4D, | |
| 'n':0x4E, | |
| 'o':0x4F, | |
| 'p':0x50, | |
| 'q':0x51, | |
| 'r':0x52, | |
| 's':0x53, | |
| 't':0x54, | |
| 'u':0x55, | |
| 'v':0x56, | |
| 'w':0x57, | |
| 'x':0x58, | |
| 'y':0x59, | |
| 'z':0x5A, | |
| 'numpad_0':0x60, | |
| 'numpad_1':0x61, | |
| 'numpad_2':0x62, | |
| 'numpad_3':0x63, | |
| 'numpad_4':0x64, | |
| 'numpad_5':0x65, | |
| 'numpad_6':0x66, | |
| 'numpad_7':0x67, | |
| 'numpad_8':0x68, | |
| 'numpad_9':0x69, | |
| 'multiply_key':0x6A, | |
| 'add_key':0x6B, | |
| 'separator_key':0x6C, | |
| 'subtract_key':0x6D, | |
| 'decimal_key':0x6E, | |
| 'divide_key':0x6F, | |
| 'F1':0x70, | |
| 'F2':0x71, | |
| 'F3':0x72, | |
| 'F4':0x73, | |
| 'F5':0x74, | |
| 'F6':0x75, | |
| 'F7':0x76, | |
| 'F8':0x77, | |
| 'F9':0x78, | |
| 'F10':0x79, | |
| 'F11':0x7A, | |
| 'F12':0x7B, | |
| 'F13':0x7C, | |
| 'F14':0x7D, | |
| 'F15':0x7E, | |
| 'F16':0x7F, | |
| 'F17':0x80, | |
| 'F18':0x81, | |
| 'F19':0x82, | |
| 'F20':0x83, | |
| 'F21':0x84, | |
| 'F22':0x85, | |
| 'F23':0x86, | |
| 'F24':0x87, | |
| 'num_lock':0x90, | |
| 'scroll_lock':0x91, | |
| 'left_shift':0xA0, | |
| 'right_shift ':0xA1, | |
| 'left_control':0xA2, | |
| 'right_control':0xA3, | |
| 'left_menu':0xA4, | |
| 'right_menu':0xA5, | |
| 'browser_back':0xA6, | |
| 'browser_forward':0xA7, | |
| 'browser_refresh':0xA8, | |
| 'browser_stop':0xA9, | |
| 'browser_search':0xAA, | |
| 'browser_favorites':0xAB, | |
| 'browser_start_and_home':0xAC, | |
| 'volume_mute':0xAD, | |
| 'volume_Down':0xAE, | |
| 'volume_up':0xAF, | |
| 'next_track':0xB0, | |
| 'previous_track':0xB1, | |
| 'stop_media':0xB2, | |
| 'play/pause_media':0xB3, | |
| 'start_mail':0xB4, | |
| 'select_media':0xB5, | |
| 'start_application_1':0xB6, | |
| 'start_application_2':0xB7, | |
| 'attn_key':0xF6, | |
| 'crsel_key':0xF7, | |
| 'exsel_key':0xF8, | |
| 'play_key':0xFA, | |
| 'zoom_key':0xFB, | |
| 'clear_key':0xFE, | |
| '+':0xBB, | |
| ',':0xBC, | |
| '-':0xBD, | |
| '.':0xBE, | |
| '/':0xBF, | |
| '`':0xC0, | |
| ';':0xBA, | |
| '[':0xDB, | |
| '\\':0xDC, | |
| ']':0xDD, | |
| "'":0xDE, | |
| '`':0xC0} | |
| def press(*args): | |
| ''' | |
| one press, one release. | |
| accepts as many arguments as you want. e.g. press('left_arrow', 'a','b'). | |
| ''' | |
| for i in args: | |
| win32api.keybd_event(VK_CODE[i], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE[i],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| def pressAndHold(*args): | |
| ''' | |
| press and hold. Do NOT release. | |
| accepts as many arguments as you want. | |
| e.g. pressAndHold('left_arrow', 'a','b'). | |
| ''' | |
| for i in args: | |
| win32api.keybd_event(VK_CODE[i], 0,0,0) | |
| time.sleep(.05) | |
| def pressHoldRelease(*args): | |
| ''' | |
| press and hold passed in strings. Once held, release | |
| accepts as many arguments as you want. | |
| e.g. pressAndHold('left_arrow', 'a','b'). | |
| this is useful for issuing shortcut command or shift commands. | |
| e.g. pressHoldRelease('ctrl', 'alt', 'del'), pressHoldRelease('shift','a') | |
| ''' | |
| for i in args: | |
| win32api.keybd_event(VK_CODE[i], 0,0,0) | |
| time.sleep(.05) | |
| for i in args: | |
| win32api.keybd_event(VK_CODE[i],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| time.sleep(.1) | |
| def release(*args): | |
| ''' | |
| release depressed keys | |
| accepts as many arguments as you want. | |
| e.g. release('left_arrow', 'a','b'). | |
| ''' | |
| for i in args: | |
| win32api.keybd_event(VK_CODE[i],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| def typer(string=None,*args): | |
| ## time.sleep(4) | |
| for i in string: | |
| if i == ' ': | |
| win32api.keybd_event(VK_CODE['spacebar'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['spacebar'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '!': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['1'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['1'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '@': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['2'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['2'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '{': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['['], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['['],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '?': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['/'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['/'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == ':': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE[';'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE[';'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '"': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['\''], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['\''],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '}': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE[']'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE[']'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '#': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['3'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['3'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '$': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['4'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['4'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '%': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['5'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['5'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '^': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['6'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['6'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '&': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['7'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['7'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '*': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['8'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['8'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '(': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['9'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['9'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == ')': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['0'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['0'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '_': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['-'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['-'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '=': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['+'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['+'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '~': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['`'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['`'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '<': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE[','], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE[','],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == '>': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['.'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['.'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'A': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['a'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['a'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'B': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['b'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['b'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'C': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['c'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['c'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'D': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['d'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['d'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'E': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['e'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['e'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'F': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['f'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['f'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'G': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['g'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['g'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'H': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['h'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['h'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'I': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['i'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['i'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'J': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['j'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['j'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'K': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['k'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['k'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'L': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['l'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['l'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'M': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['m'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['m'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'N': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['n'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['n'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'O': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['o'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['o'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'P': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['p'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['p'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'Q': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['q'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['q'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'R': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['r'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['r'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'S': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['s'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['s'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'T': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['t'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['t'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'U': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['u'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['u'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'V': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['v'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['v'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'W': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['w'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['w'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'X': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['x'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['x'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'Y': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['y'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['y'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| elif i == 'Z': | |
| win32api.keybd_event(VK_CODE['left_shift'], 0,0,0) | |
| win32api.keybd_event(VK_CODE['z'], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE['left_shift'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| win32api.keybd_event(VK_CODE['z'],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
| else: | |
| win32api.keybd_event(VK_CODE[i], 0,0,0) | |
| time.sleep(.05) | |
| win32api.keybd_event(VK_CODE[i],0 ,win32con.KEYEVENTF_KEYUP ,0) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment