1. 程式人生 > 程式設計 >Python模擬鍵盤輸入自動登入TGP

Python模擬鍵盤輸入自動登入TGP

#-*- coding: utf-8 -*-
import win32api,win32gui,win32con
import os
import time
#os.startfile('D:\\Program Files\\Tencent\\TGP\\tgp_daemon.exe')
#time.sleep(5)
label = u"騰訊遊戲平臺"
#根據視窗名獲取視窗控制代碼,
h = win32gui.FindWindow('Edit','')
#Ex = win32gui.FindWindowEx(h,None,None)
#print(h)
#print(Ex)
win32gui.SetForegroundWindow(h)
#根據視窗控制代碼使視窗位於焦點位置
time.sleep(3)
UserNum = "your id"
PassWord = "your password"

lowercase = dict(zip(range(97,123),[[x,0] for x in range(65,91)]))
#小寫字母對應的ascii碼為97~122,對應的鍵盤值為65~90
uppercase = dict(zip(range(65,91),1] for x in range(65,91)]))
#大寫字母對應的ascii碼為65~91,對應的鍵盤值為小寫字母的鍵盤值加shit
number = dict(zip(range(48,58),0] for x in range(48,58)]))
#print number
#0~9數字對應的asicc編碼為48~57, 對應的鍵盤值為48~58
symbol01 = {32: [32,0],33: [49,1],34: [222,35: [51,36: [52,37: [53,38: [55,39: [222,40: [57,41: [48,42: [56,43: [187,44: [188,45: [189,46: [190,47: [191,0]}
symbol02 = {64: [50,58: [186,59: [186,60: [188,61: [187,62: [190,63: [191,1]}
symbol03 = {96: [192,91: [219,92: [220,93: [221,94: [54,95: [189,1]}
symbol04 = {123: [219,124: [220,125: [221,126: [192,1]}
#print symbol04
passworddict = {}
passworddict = dict(lowercase.items()+uppercase.items()+number.items()+symbol01.items()+symbol02.items()+symbol03.items()+symbol04.items())
#print passworddict

for i in range(0,1):#模擬輸入tab鍵,選中賬號輸入框
  win32api.keybd_event(9,0)   
  win32api.keybd_event(9,win32con.KEYEVENTF_KEYUP,0)
  time.sleep(0.2)
time.sleep(0.5)


for i in range(0,12):#刪除輸入框中的字元
  win32api.keybd_event(8,0)
  win32api.keybd_event(8,0)
  time.sleep(0.2)

 
for i in range(0,len(UserNum)):
  key = ord(UserNum[i])
  skey = int(passworddict[key][0])
  if passworddict[key][1] == 1:
    win32api.keybd_event(16,0) 
    #獲取賬號中對應字元中的對應ascii編碼
    win32api.keybd_event(skey,0)
    win32api.keybd_event(16,0)
    win32api.keybd_event(skey,0)
  else:
    #win32api.keybd_event(16,0)
    #win32api.keybd_event(16,0)

  time.sleep(0.2)
  #模擬賬號中每個字元的輸入,每次輸入後睡眠0.2s
time.sleep(0.5)
win32api.keybd_event(9,0)
win32api.keybd_event(9,0)
#再次模擬tab鍵輸入,選中密碼輸入框
time.sleep(0.5)
for i in range(0,len(PassWord)):
  key = ord(PassWord[i])
  skey = int(passworddict[key][0])
  if passworddict[key][1] == 1:
    win32api.keybd_event(16,0)
    #獲取賬號中對應字元中的對應ascii編碼
    win32api.keybd_event(skey,0)
    
  time.sleep(0.2)

  '''
  if ord(PassWord[i])>=97 and ord(PassWord[i])<=122:
    key = ord(PassWord[i])-32
  elif ord(PassWord[i]) == 64:
    win32api.keybd_event(16,0)
    win32api.keybd_event(50,0)
    continue
  else:
    key = ord(PassWord[i])
  win32api.keybd_event(key,0)
  win32api.keybd_event(key,0)
  time.sleep(0.2)
  '''
  
win32api.keybd_event(13,0)
win32api.keybd_event(13,win32con.KEYEVENTF_KEYUP)
#模擬輸入enter鍵,確認登陸

以上就是Python模擬鍵盤輸入自動登入TGP的詳細內容,更多關於python 模擬鍵盤輸入的資料請關注我們其它相關文章!