Python开发qq批量登陆

操作步骤:

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)TencentQQBinQQScLauncher.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]))  

  

原文地址:https://www.cnblogs.com/safran/p/8361793.html