1、准备第三方包:
py -3.6 -m pip install win32gui
py -3.6 -m pip install Pywin32
py -3.6 -m pip install pyHook-1.5.1-cp36-cp36m-win_amd64.whl (这个文件是在https://www.lfd.uci.edu/~gohlke/pythonlibs/#genshi 下可找到)请使用这种方式安装,就不用去安装那些依赖环境了,比较方便
注意安装时,如果遇到
是因为版本有问题
py -3.6 -m pip install PyUserInput
按照以上的顺序进行安装
2、代码
# encodding = utf-8 import os import time import win32gui import win32api import win32con from pykeyboard import PyKeyboard from ctypes import * def QQ(qq, pwd): # 运行QQ os.system('"C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe"') time.sleep(3) # 获取QQ的窗口句柄 # 参数1是类名,参数2是QQ软件的标题 a = win32gui.FindWindow(None, "QQ") # 获取QQ登录窗口的位置 loginid = win32gui.GetWindowPlacement(a) # 定义一个键盘对象 k = PyKeyboard() # 把鼠标放置到登陆框的输入处(可以使用Autolt来获取) windll.user32.SetCursorPos(loginid[4][0] + 192, loginid[4][1] + 250) # 这个坐标可以自己调整,是鼠标能找到登录的输入框 # 按下鼠标再释放 win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) # press mouse win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0) # release mouse time.sleep(2) # 输入用户名 k.type_string(qq) time.sleep(0.2) # 按下tab,切换到输入密码的地方 win32api.keybd_event(9, 0, 0, 0) win32api.keybd_event(9, 0, win32con.KEYEVENTF_KEYUP, 0) # 输入密码 k.type_string(pwd) # 按下回车 win32api.keybd_event(13, 0, 0, 0) win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0) if __name__ == "__main__": QQ('xxxxxx', 'xxxxxxx')