Python自动登录QQ的实现示例
作者:IT平头哥 发布时间:2021-09-07 19:50:26
标签:Python,自动登录QQ
这是一份来自网络的代码,经过了我的修改和验证。
首先我的运行环境是Python3.7,需要安装PyUserInput库。
直接上代码吧:
#!/usr/bin/python
import os
import time
import win32gui
import win32api
import win32con
import pymouse,pykeyboard
from pymouse import *
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(5)
#获取QQ的窗口句柄
#参数1是类名,参数2是QQ软件的标题
a = win32gui.FindWindow(None,"QQ")
#获取QQ登录窗口的位置
loginid = win32gui.GetWindowPlacement(a)
print (loginid)
print (loginid[4][0])
print (loginid[4][1])
#定义一个键盘对象
k = PyKeyboard()
#把鼠标放置到登陆框的输入处
windll.user32.SetCursorPos(loginid[4][0]+192,loginid[4][1]+112)
#按下鼠标再释放
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)
###input username
print (qq)
#输入用户名
k.type_string(qq)
time.sleep(0.2)
##tab
#按下tab,切换到输入密码的地方
win32api.keybd_event(9,0,0,0)
win32api.keybd_event(9,0,win32con.KEYEVENTF_KEYUP,0)
#按下tab用下面两行也行
#k.press_key(k.tab_key)
#k.release_key(k.tab_key)
#按下tab用下面一行也行
#k.tap_key(k.tab_key)
#输入密码
k.type_string(pwd)
#按下回车
win32api.keybd_event(13,0,0,0)
win32api.keybd_event(13,0,win32con.KEYEVENTF_KEYUP,0)
if __name__ == "__main__":
fn = "qq.txt"
F = open(fn,"r").readlines()
for i in F:
tx = i.split('----')
print (tx[0])#打印用户名
print (tx[1])#打印密码
QQ(tx[0],tx[1])
上面就是自动登录QQ的代码了,但是批量登录的时候还是有问题,因为登录了一个之后,再次打开登录窗口,会记录下上次登录的用户名,导致再次登录新号时失败!
不知到你有没有可行的解决方案,能批量登录QQ?期待…
来源:https://blog.csdn.net/sessos/article/details/88599210
0
投稿
猜你喜欢
- 在网络可靠性中,一种较为经典且在实践中更为常用的可靠度计算便是二终端可靠度,即给定网络拓扑结构与边可靠度(假定节点完全可靠),计算网络中指定
- 安装依赖1)下载安装opencv-2.4.9,并将cv2.pyd拷贝到python安装目录的site-package下2)pip insta
- 在ASP.net页面中,我们编写JavaScript脚本附加有注释时,这些注释也往往会随JavaScript脚本一起送到客户端。
- ASP实现语音分时问候,其实asp实现这个功能很容易,时间判断一下,在某个时间段就调用某个的背景语音。下面是源代码:
- 一、ASP中处在双引号中的可以是任意的字符、字符串,HTML代码1.<%response.write ("I&nb
- 前言Pandas是python的一个数据分析包,是基于NumPy的一种工具提供了大量数据结构和函数,可以很方便的处理结构化数据,常见数据结构
- 使用PHP GD,使用良好,一键剪裁各种尺寸,打包下载。经常换icon的懂的,美工给你一个1024的logo,你得ps出各种尺寸,于是有了这
- 用mysqlbinlog.exe查看二进制日志是否启用了日志mysql>show variables like 'log%
- 写了个多层感知器,用bp梯度下降更新,拟合正弦曲线,效果凑合。# -*- coding: utf-8 -*-import numpy as
- 微博如火如荼,大家都选择用微博带来社会化流量,顺便推广产品和网站,几乎所有的网站都有分享到代码,但是还有一种更快捷的分享方式,javascr
- Python类的继承在OOP(ObjectOrientedProgramming)程序设计中,当我们定义一个class的时候,可以从某个现有
- 缘起simple-todo最早是web.py一个中文教程的例子。后来Uliweb的作者limodou 认为这个教程很不错,于是有了Uliwe
- 我们平时接触的长乘法,按位相乘,是一种时间复杂度为 O(n ^ 2) 的算法。今天,我们来介绍一种时间复杂度为 O (n ^ log 3)
- 做教育业的网站,会将此遇到这个问题:如何在网页上显示音标?音标为什么显示为乱字符?等等类似的问题。前两天做沪江网某英语页面的时候也碰到了这个
- 我们在网页中使用CSS来设置网页、表格和字体大小,一般使用的是网络上较流行的9磅字:<STYLE type=TEXT/CSS
- 本文实例讲述了python3.6生成器yield用法。分享给大家供大家参考,具体如下:今天看源码的时候看到了一个比较有意思的函数:yield
- 背景:今天同事写代码,用python读取一个四五百兆的文件,然后做一串逻辑上很直观的处理。结果处理了一天还没有出来结果。问题出在哪里呢?解决
- 一. 抛出异常Python用异常对象(exception object)表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,
- rhel5下默认安装mysql5.0后,中文显示为乱码原因:mysql默认字符集是latin,所以中文不能正常显示解决方法:修改配置文件,
- 这货很强大, 必须掌握文档 链接 http://docs.python.org/2/library/itertools.htmlpymotw