操作步骤:
1.打开qq软件
2.移动鼠标到qq输入处
3.在输入处,点击鼠标,输入帐号
4.模拟按下tab键,输入密码,模拟点回车登录
#coding=utf-8
import os
import win32gui
import win32api
import win32con
import SendKeys
import time
from ctypes import *
#多次登录qq,传入账号密码
def qqLoad(qq,pwd):
#使用系统模块os,打开qq
#必须是单引号+双引号才能运行
os.system('"C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe"')
#留给qq界面点响应时间
time.sleep(0.2)
# 获取窗口的句柄,参数1:类名,参数2:标题
handle = win32gui.FindWindow(None,'QQ')
#返回指定窗口的显示状态以及被恢复的、最大化的和最小化的窗口位置
logId = win32gui.GetWindowPlacement(handle)
print logId
#设置鼠标位置,横坐标等于左上角数加输入框离左边界的差值,纵坐标等于左上角数加输入框离上边界的差值
#差值可用截图工具,测量像素差值
windll.user32.SetCursorPos(logId[4][0]+310,logId[4][1]+280)
#模拟鼠标点击操作,左键先按下,再松开
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,0,0,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,0,0,0,0)
#!!注意,必须要延时,才能正确输入,否则输入内容错误
time.sleep(0.2)
#安装SendKeys库,可自动输入内容
SendKeys.SendKeys(qq)
time.sleep(0.2)
#按下tab键,切换到输入密码
#模拟键盘操作,查看键盘对应asc码,tab键对应asc码是9
#先按下,再松开
win32api.keybd_event(9,0,0,0)
win32api.keybd_event(9,0,win32con.KEYEVENTF_KEYUP,0)
time.sleep(0.2)
#输入密码,点击回车键登录
SendKeys.SendKeys(pwd)
time.sleep(0.2)
win32api.keybd_event(13,0,0,0)
win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP,0)
if __name__ == '__main__':
#在文件中读取帐号密码信息
fn = 'D:\info.txt'
fr = open(fn,'r').readlines()
#循环打开每一行,使用split分成列表
for i in fr:
info = i.split('----')
qqLoad(str(info[0]),str(info[1]))