http://www.sharejs.com/codes/python/9059
#
# _*_ coding:UTF-8 _*_ |
import win32api |
import win32con |
import win32gui |
from ctypes import * |
import time |
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 } |
class POINT(Structure): |
_fields_ = [( "x" , c_ulong),( "y" , c_ulong)] |
def get_mouse_point(): |
po = POINT() |
windll.user32.GetCursorPos(byref(po)) |
return int (po.x), int (po.y) |
def mouse_click(x = None ,y = None ): |
if not x is None and not y is None : |
mouse_move(x,y) |
time.sleep( 0.05 ) |
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0 , 0 , 0 , 0 ) |
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0 , 0 , 0 , 0 ) |
def mouse_dclick(x = None ,y = None ): |
if not x is None and not y is None : |
mouse_move(x,y) |
time.sleep( 0.05 ) |
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0 , 0 , 0 , 0 ) |
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0 , 0 , 0 , 0 ) |
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0 , 0 , 0 , 0 ) |
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0 , 0 , 0 , 0 ) |
def mouse_move(x,y): |
windll.user32.SetCursorPos(x, y) |
def key_input( str = ''): |
for c in str : |
win32api.keybd_event(VK_CODE[c], 0 , 0 , 0 ) |
win32api.keybd_event(VK_CODE[c], 0 ,win32con.KEYEVENTF_KEYUP, 0 ) |
time.sleep( 0.01 ) |
if __name__ = = "__main__" : |
mouse_click( 1024 , 470 ) |
str = 'hello' |
key_input(
str
)