Python 监控微信聊天记录
导入需要的模块
import os import time import win32gui import win32con import win32api
定义获取微信窗口句柄的函数
def get_wechat_handle(): # 获取微信主窗口句柄 handle = win32gui.FindWindow('WeChatMainWndForPC', None) if handle == 0: return None
# 获取微信聊天窗口句柄
child_handle = win32gui.FindWindowEx(handle, None, 'ChatWnd', None)
if child_handle == 0:
return None
# 获取微信聊天输入框句柄
input_handle = win32gui.FindWindowEx(child_handle, None, 'Edit', None)
if input_handle == 0:
return None
return input_handle
定义发送消息的函数
def send_message(msg): # 获取微信聊天输入框句柄 input_handle = get_wechat_handle() if input_handle is None: return False
# 将消息输入到微信聊天输入框中
win32api.SendMessage(input_handle, win32con.WM_SETTEXT, None, msg)
# 模拟按下回车键发送消息
win32api.PostMessage(input_handle, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)
win32api.PostMessage(input_handle, win32con.WM_KEYUP, win32con.VK_RETURN, 0)
return True
定义监控微信聊天记录的函数
def monitor_chat(): # 获取微信聊天窗口句柄 handle = get_wechat_handle() if handle is None: return False
# 循环监控微信聊天记录
while True:
# 获取微信聊天记录
buffer = win32gui.PyMakeBuffer(1024)
length = win32gui.SendMessage(handle, win32con.WM_GETTEXT, 1024, buffer)
# 将字节流转换为字符串
text = buffer[:length].tobytes().decode('utf-16')
# 输出微信聊天记录
print(text)
# 等待一段时间后继续监控
time.sleep(1)
主函数
if name == 'main': # 启动监控微信聊天记录 monitor_chat()
# 发送消息到微信聊天窗口
send_message('Hello, World!')
原文地址: https://www.cveoy.top/t/topic/mz0F 著作权归作者所有。请勿转载和采集!