Python模擬鍵盤輸入自動(dòng)登錄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"騰訊游戲平臺" #根據(jù)窗口名獲取窗口句柄, h = win32gui.FindWindow('Edit','') #Ex = win32gui.FindWindowEx(h,None,None,None) #print(h) #print(Ex) win32gui.SetForegroundWindow(h) #根據(jù)窗口句柄使窗口位于焦點(diǎn)位置 time.sleep(3) UserNum = "your id" PassWord = "your password" lowercase = dict(zip(range(97,123),[[x,0] for x in range(65,91)])) #小寫字母對應(yīng)的ascii碼為97~122,對應(yīng)的鍵盤值為65~90 uppercase = dict(zip(range(65,91),[[x,1] for x in range(65,91)])) #大寫字母對應(yīng)的ascii碼為65~91,對應(yīng)的鍵盤值為小寫字母的鍵盤值加shit number = dict(zip(range(48,58), [[x,0] for x in range(48,58)])) #print number #0~9數(shù)字對應(yīng)的asicc編碼為48~57, 對應(yīng)的鍵盤值為48~58 symbol01 = {32: [32, 0], 33: [49, 1], 34: [222, 1], 35: [51, 1], 36: [52, 1], 37: [53, 1], 38: [55, 1], 39: [222, 0], 40: [57, 1], 41: [48, 1], 42: [56, 1], 43: [187, 1], 44: [188, 0], 45: [189, 0], 46: [190, 0], 47: [191, 0]} symbol02 = {64: [50, 1], 58: [186, 1], 59: [186, 0], 60: [188, 1], 61: [187, 0], 62: [190, 1], 63: [191, 1]} symbol03 = {96: [192, 0], 91: [219, 0], 92: [220, 1], 93: [221, 0], 94: [54, 1], 95: [189, 1]} symbol04 = {123: [219, 1], 124: [220, 1], 125: [221, 1], 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,0,0) win32api.keybd_event(9,0,win32con.KEYEVENTF_KEYUP,0) time.sleep(0.2) time.sleep(0.5) for i in range(0,12):#刪除輸入框中的字符 win32api.keybd_event(8,0,0,0) win32api.keybd_event(8,0,win32con.KEYEVENTF_KEYUP,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,0,0) #獲取賬號中對應(yīng)字符中的對應(yīng)ascii編碼 win32api.keybd_event(skey,0,0,0) win32api.keybd_event(16,0,win32con.KEYEVENTF_KEYUP,0) win32api.keybd_event(skey,0,win32con.KEYEVENTF_KEYUP,0) else: #win32api.keybd_event(16,0,0,0) #獲取賬號中對應(yīng)字符中的對應(yīng)ascii編碼 win32api.keybd_event(skey,0,0,0) #win32api.keybd_event(16,0,win32con.KEYEVENTF_KEYUP,0) win32api.keybd_event(skey,0,win32con.KEYEVENTF_KEYUP,0) time.sleep(0.2) #模擬賬號中每個(gè)字符的輸入,每次輸入后睡眠0.2s time.sleep(0.5) win32api.keybd_event(9,0,0,0) win32api.keybd_event(9,0,win32con.KEYEVENTF_KEYUP,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,0,0) #獲取賬號中對應(yīng)字符中的對應(yīng)ascii編碼 win32api.keybd_event(skey,0,0,0) win32api.keybd_event(16,0,win32con.KEYEVENTF_KEYUP,0) win32api.keybd_event(skey,0,win32con.KEYEVENTF_KEYUP,0) else: #win32api.keybd_event(16,0,0,0) #獲取賬號中對應(yīng)字符中的對應(yīng)ascii編碼 win32api.keybd_event(skey,0,0,0) #win32api.keybd_event(16,0,win32con.KEYEVENTF_KEYUP,0) win32api.keybd_event(skey,0,win32con.KEYEVENTF_KEYUP,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,0,0) win32api.keybd_event(50,0,0,0) win32api.keybd_event(16,0,win32con.KEYEVENTF_KEYUP,0) win32api.keybd_event(50,0,win32con.KEYEVENTF_KEYUP,0) continue else: key = ord(PassWord[i]) win32api.keybd_event(key,0,0,0) win32api.keybd_event(key,0,win32con.KEYEVENTF_KEYUP,0) time.sleep(0.2) ''' win32api.keybd_event(13,0,0,0) win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP) #模擬輸入enter鍵,確認(rèn)登陸
以上就是Python模擬鍵盤輸入自動(dòng)登錄TGP的詳細(xì)內(nèi)容,更多關(guān)于python 模擬鍵盤輸入的資料請關(guān)注腳本之家其它相關(guān)文章!
- python爬取企查查企業(yè)信息之selenium自動(dòng)模擬登錄企查查
- python3定位并識別圖片驗(yàn)證碼實(shí)現(xiàn)自動(dòng)登錄功能
- Appium+Python實(shí)現(xiàn)簡單的自動(dòng)化登錄測試的實(shí)現(xiàn)
- Python內(nèi)置函數(shù)hex()的實(shí)現(xiàn)示例
- Python 實(shí)現(xiàn)自動(dòng)登錄+點(diǎn)擊+滑動(dòng)驗(yàn)證功能
- python自動(dòng)化實(shí)現(xiàn)登錄獲取圖片驗(yàn)證碼功能
- Python 自動(dòng)登錄淘寶并保存登錄信息的方法
- python實(shí)現(xiàn)網(wǎng)站用戶名密碼自動(dòng)登錄功能
- python爬蟲之利用selenium模塊自動(dòng)登錄CSDN
相關(guān)文章
用smtplib和email封裝python發(fā)送郵件模塊類分享
本文針對發(fā)郵件相關(guān)的操作進(jìn)行了封裝,包括發(fā)送文本、HTML、帶附件的郵件,使用Python發(fā)郵件,主要用到smtplib和email兩個(gè)模塊,需要的朋友可以參考下2014-02-02Python基于sftp及rsa密匙實(shí)現(xiàn)遠(yuǎn)程拷貝文件的方法
這篇文章主要介紹了Python基于sftp及rsa密匙實(shí)現(xiàn)遠(yuǎn)程拷貝文件的方法,結(jié)合實(shí)例形式分析了基于RSA秘鑰遠(yuǎn)程登陸及文件操作的相關(guān)技巧,需要的朋友可以參考下2016-09-09如何將一個(gè)CSV格式的文件分割成兩個(gè)CSV文件
這篇文章主要介紹了如何將一個(gè)CSV格式的文件分割成兩個(gè)CSV文件,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07Python實(shí)現(xiàn)像awk一樣分割字符串
這篇文章主要介紹了Python實(shí)現(xiàn)像awk一樣分割字符串,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Python列表(list)、字典(dict)、字符串(string)基本操作小結(jié)
這篇文章主要介紹了Python列表(list)、字典(dict)、字符串(string)基本操作小結(jié),本文總結(jié)了最基本最常用的一些操作,需要的朋友可以參考下2014-11-11python之tensorflow手把手實(shí)例講解貓狗識別實(shí)現(xiàn)
要說到深度學(xué)習(xí)圖像分類的經(jīng)典案例之一,那就是貓狗大戰(zhàn)了。貓和狗在外觀上的差別還是挺明顯的,無論是體型、四肢、臉龐和毛發(fā)等等, 都是能通過肉眼很容易區(qū)分的。那么如何讓機(jī)器來識別貓和狗呢?網(wǎng)上已經(jīng)有不少人寫過這案例了,我也來嘗試下練練手。2021-09-09python和flask中返回JSON數(shù)據(jù)的方法
下面小編就為大家整理了一篇python和flask中返回JSON數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03python cv2截取不規(guī)則區(qū)域圖片實(shí)例
今天小編就為大家分享一篇python cv2截取不規(guī)則區(qū)域圖片實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12常見的在Python中實(shí)現(xiàn)單例模式的三種方法
這篇文章主要介紹了常見的在Python中實(shí)現(xiàn)單例模式的三種方法,單例模式在各個(gè)編程語言的學(xué)習(xí)中都是需要掌握的基礎(chǔ)知識,需要的朋友可以參考下2015-04-04