http://blog.sina.com.cn/s/blog_5eeb1e2f0101ax1x.html 一、Python鍵盤輸入模擬:
import win32api
import win32con
win32api.keybd_event(17,0,0,0) #ctrl鍵位碼是17
win32api.keybd_event(86,0,0,0) #v鍵位碼是86
win32api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0) #釋放按鍵
win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)
附個鍵位碼表:
字母和數(shù)字鍵 數(shù)字小鍵盤的鍵
功能鍵
其它鍵
鍵 鍵碼
鍵 鍵碼
鍵 鍵碼
鍵
鍵碼
A 65
0 96
F1 112
Backspace
8
B 66
1 97
F2 113
Tab
9
C 67
2 98
F3 114
Clear
12
D 68
3 99
F4 115
Enter
13
E 69
4 100
F5
116 Shift
16
F 70
5 101
F6
117
Control
17
G 71
6 102
F7
118
Alt
18
H 72
7 103
F8
119 Caps
Lock 20
I 73
8 104
F9
120 Esc
27
J 74
9 105
F10
121
Spacebar
32
K 75
* 106
F11
122 Page Up
33
L 76
+ 107
F12
123 Page
Down 34
M 77
Enter 108
-- --
End
35
N 78
- 109
--
--
Home
36
O 79
. 110
--
--
Left Arrow
37
P 80
/ 111
--
--
Up Arrow
38
Q 81
-- --
--
--
Right Arrow
39
R 82
-- --
--
--
Down Arrow
40
S 83
-- --
--
--
Insert
45
T 84
-- --
--
--
Delete
46
U 85
-- --
--
--
Help
47
V 86
-- --
--
--
Num Lock
144
其他未列出的字母和數(shù)字鍵盤為:ord(c)
二、 使用windll.user32實(shí)現(xiàn)鼠標(biāo)模擬:
from ctypes import *
windll.user32.SetCursorPos(100, 100)
三. 使用AutoItX實(shí)現(xiàn)鼠標(biāo)模擬:
#將AutoItX3.dll 文件復(fù)制到 window目錄然后注冊一下
regsvr32.exe AutoItX3.dll
from win32com.client import Dispatch
def enter_game():
AutoItX
= Dispatch( "AutoItX3.Control" )
# Block
All Input
AutoItX.BlockInput( 1 )
AutoItX.Sleep( 20000 )
if
AutoItX.WinActivate( GAME_WINDOW_TITLE, '' ):
pass
else:
if AutoItX.WinWaitActive(
GAME_WINDOW_TITLE, '', 8 ):
pass
else:
# Unblock input
AutoItX.BlockInput( 0 )
return False
AutoItX.WinSetTitle( GAME_WINDOW_TITLE, '',
_pre_title )
AutoItX.WinSetState( _pre_title, '',
AutoItX.SW_MAXIMIZE )
AutoItX.Sleep( 5000 )
AutoItX.MouseMove( 462, 396, 10 )
AutoItX.MouseClick( "left" )
AutoItX.Sleep( 1000 )
AutoItX.Send( GAME_ACCT_NAME )
AutoItX.Sleep( 1000 )
AutoItX.MouseMove ( 462, 472, 10 )
AutoItX.MouseClick( "left" )
AutoItX.Sleep( 1000 )
AutoItX.Send( GAME_ACCT_PASS )
AutoItX.Send( "{ENTER}" )
AutoItX.Sleep( 10000 )
# Unblock
input
AutoItX.BlockInput( 0 )
return
True
四. 使用跨平臺的autopy實(shí)現(xiàn)
五、使用autohook監(jiān)控鍵盤操作:
from http://hi.baidu.com/jakisou/item/3c6099f7566621de6325d2a9
|