这次为大家带来的是对登陆后的QQ进行的操作:
1,打开好友对话框
代码
import win32gui, win32con, win32api, time
import win32clipboard as w
#已知一个窗口的句柄 hwnd
hwnd = win32gui.FindWindow('TXGuiFoundation', 'QQ')
print(hwnd)
#一个刷新粘贴板的函数
def setText(str):
w.OpenClipboard()
w.EmptyClipboard()
w.SetClipboardData(win32con.CF_UNICODETEXT, str)
w.CloseClipboard()
#设置hwnd顶置就可以实现填充
def find_py(zh):
setText(zh)
win32gui.SetForegroundWindow(hwnd)
win32gui.ShowWindow(hwnd, win32con.SW_SHOW)
time.sleep(0.5)
# 填充粘贴板的内容
win32gui.SendMessage(hwnd, 770, 0, 0)
time.sleep(0.2)
win32api.keybd_event(13, 0, 0, 0)
win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.2)
find_py('1459229119')
以上便可以打开好友对话框,接下来是给好友发送消息:
2,发送消息
代码:
def FaSong_xx(hwnd, str):
#依然顶置 一个是顶置一个是显示主要针对最小化后的窗口
setText(str)
win32gui.SetForegroundWindow(hwnd)
win32gui.ShowWindow(hwnd, win32con.SW_SHOW)
time.sleep(0.5)
# 填充粘贴板的内容
win32gui.SendMessage(hwnd, 770, 0, 0)
time.sleep(0.2)
win32api.keybd_event(13, 0, 0, 0)
win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.2)
# 注:使用例如:FindWindow('TXGuiFoundation', '初学者') 时
# 'TXGuiFoundation'为窗口的类名 '初学者'为标题 具体的有什么不懂可以使用spy++查看
py_hwnd = win32gui.FindWindow('TXGuiFoundation', '初学者')
# print(py_hwnd)
FaSong_xx(py_hwnd, 'nihao')
3,给好友点赞
代码:
def DianZan(hwnd):
win32gui.SetForegroundWindow(hwnd)
win32gui.ShowWindow(hwnd, win32con.SW_SHOW)
time.sleep(0.5)
win32api.keybd_event(16, 0, 0, 0)
win32api.keybd_event(9, 0, 0, 0)
win32api.keybd_event(9, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.1)
win32api.keybd_event(9, 0, 0, 0)
win32api.keybd_event(9, 0, win32con.KEYEVENTF_KEYUP, 0)
win32api.keybd_event(16, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.2)
#回车键打开点赞窗口
win32api.keybd_event(13, 0, 0, 0)
win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.2)
dz_hwnd = win32gui.FindWindow('TXGuiFoundation', None)
dz_hwnd1 = win32gui.GetForegroundWindow()
#来一个简单的判断
if '的资料' not in win32gui.GetWindowText(dz_hwnd1):
DianZan(hwnd)
else:
#两下tab聚焦到点赞的控件
win32api.keybd_event(9, 0, 0, 0)
win32api.keybd_event(9, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.1)
win32api.keybd_event(9, 0, 0, 0)
win32api.keybd_event(9, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(1)
for i in range(25):
win32api.keybd_event(13, 0, 0, 0)
win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0)
time.sleep(0.01)
# 注:使用例如:FindWindow('TXGuiFoundation', '初学者') 时
# 'TXGuiFoundation'为窗口的类名 '初学者'为标题 具体的有什么不懂可以使用spy++查看
find_py('1459229119')
# time.sleep(1)
py_hwnd = win32gui.FindWindow('TXGuiFoundation', '初学者')
# print(py_hwnd)
# FaSong_xx(py_hwnd, 'nihao')
DianZan(py_hwnd)
点赞的函数内容其实也不多 就是要执行的按键比较多
今天的内容就到这里了 今天和大家一起学习了--登录QQ后 搜索好友 给好友发消息 给好友点赞
接下来我会和大家一起学习更多 如果大家有什么好的小项目有瓶颈的话 欢迎一起讨论啊