python实现QQ批量登录功能

yipeiwu_com6年前Python基础

本文实例为大家分享了python实现QQ批量登录功能的具体代码,供大家参考,具体内容如下

小编收集整理的第一份代码:python3.6批量登陆QQ

import os
import time
import win32gui
import win32api
import win32con
from ctypes import *
from pykeyboard import PyKeyboard
from pymouse import PyMouse
 
# 实例化PyKeyboard和PyMouse
m = PyMouse()
k = PyKeyboard()
 
 
def QQ_login():
 # 打开qq
 os.startfile(r'C:\Program Files\Tencent\QQ\Bin\QQScLauncher.exe')
 # 获取窗口的句柄
 time.sleep(2)
 # 获取窗口的句柄
 handle = win32gui.FindWindow(None, 'QQ')
 # 返回指定窗口的显示状态以及被恢复的、最大化的和最小化的窗口位置354 a
 loginid = win32gui.GetWindowPlacement(handle)
 print(loginid, loginid[4][0])
 # 设置鼠标位置,横坐标等于左上角数加输入框离左边界的差值,纵坐标等于左上角数加输出狂上边界差值
 # 差值可用截图工具,测量像素差值
 windll.user32.SetCursorPos(loginid[4][0] + 310, loginid[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.1)
 k.type_string('qq_name')
 time.sleep(0.1)
 # tab切换
 win32api.keybd_event(9, 0, 0, 0)
 win32api.keybd_event(9, 0, win32con.KEYEVENTF_KEYUP, 0)
 k.type_string('password')
 # 点击回车键登陆
 win32api.keybd_event(13, 0, 0, 0)
 win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0)
 
 
if __name__ == '__main__':
 QQ_login()

第二份代码:使用Python进行QQ批量登录

 #coding=utf-8
 __author__ = 'Eagle'
 import os
 import time
 import win32gui
import win32api
import win32con
import SendKeys
from ctypes import *
 def QQ(qq,pwd):
 a = win32gui.FindWindow(None, "QQ")
 #运行QQ
 os.system('"C:\Program Files (x86)\Tencent\QQ\Bin\QQScLauncher.exe"')
 time.sleep(5)
 a= win32gui.FindWindow(None,"QQ") # 获取窗口的句柄,参数1: 类名,参数2: 标题QQ
 loginid= win32gui.GetWindowPlacement(a)
 windll.user32.SetCursorPos(loginid[4][0]+300, loginid[4][1]+273 )
 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(qq)
 time.sleep(0.2)
 ##tab切换
 ##Python学习群125240963
 win32api.keybd_event(9,0,0,0)
 win32api.keybd_event(9,0,win32con.KEYEVENTF_KEYUP,0)
 SendKeys.SendKeys(pwd)
 #点击回车键登录
 win32api.keybd_event(13,0,0,0)
 win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP,0)
 #读取账号密码文件例如: 1234567----she123456 #账号密码四个- 分隔
 fn = "C:\\qq.txt" #此文件可以自定义,但是路径要一定对
 #打开账号密码文件
 F = open(fn,"r").readlines()
 #分隔账号密码,传两个参数,账号密码 
 for i in F:
 tx = i.split("----")
 QQ(tx[0],tx[1])

感谢网友们的分享。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈Python的Django框架中的缓存控制

关于缓存剩下的问题是数据的隐私性以及在级联缓存中数据应该在何处储存的问题。 通常用户将会面对两种缓存: 他或她自己的浏览器缓存(私有缓存)以及他或她的提供者缓存(公共缓存)。 公共缓存由...

对python:print打印时加u的含义详解

u:表示unicode字符串 不是仅仅是针对中文, 可以针对任何的字符串,代表是对字符串进行unicode编码。 一般英文字符在使用各种编码下, 基本都可以正常解析, 所以一般不带u;...

python 获取list特定元素下标的实例讲解

python 获取list特定元素下标的实例讲解

在平时开发过程中,经常遇到需要在数据中获取特定的元素的信息,如到达目的地最近的车站,橱窗里面最贵的物品等等。怎么办?看下面 方法一: 利用数组自身的特性 a.index(target),...

Python 常用的安装Module方式汇总

一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行: python...

Python基础入门之seed()方法的使用

 seed() 设置生成随机数用的整数起始值。调用任何其他random模块函数之前调用这个函数。 语法 以下是seed()方法的语法: seed ( [x] ) 注意...