使用 Python 实现微信消息的一键已读的思路代码

关键词
微信消息一键已读 微信消息批量已读 微信消息全部已读
1、微信消息怎么批量已读
2、微信消息可以一键已读吗
3、微信如何设置全部已读

目前支持 windows 微信
下载后双击运行即可

点击下载微信消息一键已读工具

1、实现思路

Step 1 > 获取微信的句柄
Step 2 > 激活微信窗口
Step 3 > 移动聊天窗口到最前
Step 4 > 模拟快捷键阅读消息
Step 5 >

2、安装依赖

所需依赖

import win32gui
import win32con
import win32api
import pyautogui
from time import sleep
from tkinter import *

3.编写代码



支持代码

"""
微信消息一键已读
"""

import win32gui
import win32con
import win32api
import pyautogui
from time import sleep

'''
hwnd = win32gui.FindWindow(lpClassName=None, lpWindowName=None)  # 查找窗口,不找子窗口,返回值为0表示未找到窗口
hwnd = win32gui.FindWindowEx(hwndParent=0, hwndChildAfter=0, lpszClass=None, lpszWindow=None)  # 查找子窗口,返回值为0表示未找到子窗口

win32gui.ShowWindow(hwnd, win32con.SW_SHOWNORMAL)
SW_HIDE:隐藏窗口并激活其他窗口。nCmdShow=0。
SW_SHOWNORMAL:激活并显示一个窗口。如果窗口被最小化或最大化,系统将其恢复到原来的尺寸和大小。应用程序在第一次显示窗口的时候应该指定此标志。nCmdShow=1。
SW_SHOWMINIMIZED:激活窗口并将其最小化。nCmdShow=2。
SW_SHOWMAXIMIZED:激活窗口并将其最大化。nCmdShow=3。
SW_SHOWNOACTIVATE:以窗口最近一次的大小和状态显示窗口。激活窗口仍然维持激活状态。nCmdShow=4。
SW_SHOW:在窗口原来的位置以原来的尺寸激活和显示窗口。nCmdShow=5。
SW_MINIMIZE:最小化指定的窗口并且激活在Z序中的下一个顶层窗口。nCmdShow=6。
SW_SHOWMINNOACTIVE:窗口最小化,激活窗口仍然维持激活状态。nCmdShow=7。
SW_SHOWNA:以窗口原来的状态显示窗口。激活窗口仍然维持激活状态。nCmdShow=8。
SW_RESTORE:激活并显示窗口。如果窗口最小化或最大化,则系统将窗口恢复到原来的尺寸和位置。在恢复最小化窗口时,应用程序应该指定这个标志。nCmdShow=9。
'''

def max_min_windows(hwnd):
    """
    如果已经最大化,就最小化,否则反之
    :param hwnd: 窗口句柄
    """
    if win32gui.IsIconic(hwnd):
        win32gui.ShowWindow(hwnd, win32con.SW_SHOWMAXIMIZED)
    else:
        win32gui.ShowWindow(hwnd, win32con.SW_SHOWMINIMIZED)

def up():
    pyautogui.press('up')
    sleep(0.01)

def down():
    pyautogui.press('down')
    sleep(0.01)

def read_msg(hwnd):
    # 获取窗口的坐标
    left, top, right, bottom = win32gui.GetWindowRect(hwnd)
    pyautogui.moveTo(left + 170, top + 100)
    pyautogui.click(left + 170, top + 100, button='left')
    # 滚轮滚动到最顶端
    [pyautogui.scroll(1000) for i in range(15)]
    pyautogui.click(left + 170, top + 100, button='left')
    # 模拟读消息按键
    [up() for i in range(5)]
    [down() for i in range(20)]
    # 回到最顶端
    [pyautogui.scroll(1000) for i in range(15)]
    # 回到顶端聊天窗口
    pyautogui.click(left + 170, top + 100, button='left')

# 显示到正常状态
def active_window(hwnd):
    win32gui.ShowWindow(hwnd, win32con.SW_MINIMIZE)
    win32gui.SetActiveWindow(hwnd)
    win32gui.ShowWindow(hwnd, win32con.SW_SHOWNORMAL)

应用程序代码

from windows_api.wechat import wechat_one_key_read
from tkinter import *
import win32gui
from time import sleep

root = Tk()
# 标题
root.title('wx')
# 窗口大小
root.geometry('200x50+300+300')

def read():
    hwnd = win32gui.FindWindow('WeChatMainWndForPC', "微信")
    if hwnd == 0:
        [print('微信未启动,请启动微信再试') for i in range(5)]
        return
    print('请勿移动鼠标或者操作键盘')
    sleep(1)
    print('开始激活微信窗口')
    wechat_one_key_read.active_window(hwnd)
    print('微信窗口已经激活,请勿移动鼠标或者操作键盘')
    print('开始阅读消息')
    wechat_one_key_read.read_msg(hwnd)
    print('消息阅读完成')

t = Entry(root)
b = Button(root, text='一键已读', command=read)
b.pack()

root.mainloop()

if __name__ == '__main__':
    pass

相关参考 如何把代码打包成 exe 可执行程序

4、运行效果



已读完成

以上就是使用 Python 实现微信消息的一键已读的详细内容,更多关于Python 微信一键已读的资料请关注我们其它相关文章!

(0)

相关推荐

  • 用python发送微信消息

    条件 1.能够上网 2.必须是你的好友 3.必须能二维码登录网页微信 发送示例 # 使用微信接口给微信好友发送消息, import itchat   # 自动登录方法,hotReload=True可以缓存,不用每次都登录,但是第一次执行时会出现一个二维码,需要手机微信扫码登录 itchat.auto_login(hotReload=False)   # 搜索好友,search_friends("xxx"),其中"xxx"为好友昵称,备注或微信号不行 userfinf

  • 使用Python制作自动推送微信消息提醒的备忘录功能

    日常工作生活中,事情一多,就会忘记一些该做未做的事情.即使有时候把事情记录在了小本本上或者手机.电脑端备忘录上,也总会有查看不及时,导致错过的尴尬.如果有一款小工具,可以及时提醒,而不用再主动去查备忘录,化被动为主动,那就再合适不过了.因此,在这里我们就利用Python,实现这样的一款"小工具". 初步设想 毫无疑问,手机是当前使用最频繁的工具,没有之一.饭可以不吃,手机不可以不带.如果能在某些特定的时点,将备忘记录事项通过某种形式发送到手机端,通过查看手机端消息实现事项提醒,那将是再

  • Python 实现还原已撤回的微信消息

    导包效果展示 以下截图显示的撤回消息类型依次是文字消息.微信自带表情.图片.语音.定位地图.名片.公众号文章.音乐.视频.有群里撤回的,也有个人号撤回的. 图文来源:http://kks.me/aULmF 图文来源:http://kks.me/aULmF 程序思路 主要由两部分组成: handler_receive_msg():处理接收到的消息,将消息临时放在字典中. send_msg_helper():将撤回的消息自动发给文件传输助手. 程序分析 首先,我们定义一个字典来储存消息,定义消息储存

  • Python字典循环添加一键多值的用法实例

    循环写入字典key.value.删除指定的键值对: 原文本'jp_url.txt'每行元素以逗号分隔: host_key,product_id,product_name,cont_start,cont_end ah2.zhangyue.com,100002,掌阅,bookId=,&startChapterId ih2.ireader.com,100002,掌阅,bid=,& www.ireader.com,100002,掌阅,&bid=,&cid m.zhangyue.co

  • 使用 Python 实现微信消息的一键已读的思路代码

    关键词 微信消息一键已读 微信消息批量已读 微信消息全部已读 1.微信消息怎么批量已读 2.微信消息可以一键已读吗 3.微信如何设置全部已读 目前支持 windows 微信 下载后双击运行即可 点击下载微信消息一键已读工具 1.实现思路 Step 1 > 获取微信的句柄 Step 2 > 激活微信窗口 Step 3 > 移动聊天窗口到最前 Step 4 > 模拟快捷键阅读消息 Step 5 > 2.安装依赖 所需依赖 import win32gui import win32c

  • Python实现微信消息防撤回功能的实例代码

    微信(WeChat)是腾讯公司于2011年1月21日推出的一款社交软件,8年时间微信做到日活10亿,日消息量450亿.在此期间微信也推出了不少的功能如:"摇一摇"."漂流瓶"."朋友圈"."附近的人"."公众平台"."小程序"等等,涵盖了我们生活的方方面面,微信正在慢慢践行着他们的口号:微信,是一个生活方式 一.背景介绍 产品的更新迭代必然会伴随着功能的推出和下线,今天我们要讲的便是微信

  • Python制作微信好友背景墙教程(附完整代码)

    引言 前段时间,微信朋友圈开始出现了一种晒照片新形式,微信好友墙,即在一张大图片中展示出自己的所有微信好友的头像. 效果如下图,出于隐私考虑,这里作了模糊处理. 是不是很炫,而且这还是独一无二的,毕竟每个人的微信好友是不一样的.本文就教大家用Python来实现这种效果. 环境 操作系统:Windows Python版本:3.7.3 代码实现 我们需要首先需要获取好友的头像信息,接下来处理图像并完成图像的拼接. 准备工作 在这里,我们登录微信获取好友信息,使用的是 wxpy 模块:处理并生成最终的

  • python使用wxpy实现微信消息防撤回脚本

    本文实例为大家分享了python实现微信消息防撤回的具体代码,供大家参考,具体内容如下 使用了sqlite3保存数据,当有人撤回消息时取出数据发送到文件传输助手. 文件的话会先保存到本地,语音会以文件的方式发送. wxpy 和 itchat很久没更新了,有些功能没法用了,web微信也不知道什么时候会凉. 帮助信息在注释里. # -*- coding: utf-8 -*- # 使用sqlite3保存message,当有人撤回消息时在数据库中通过ID检索该消息是否存在,如果存在则将撤回的消息发送到文

  • python如何查看微信消息撤回

    本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以实现自动回复等多种功能. 看到的一个文档还不错 1).先安一个python 下载地址 2).安装成功之后,进入pip3.exe所在的目录 安装itchat:pip3.exe install itchat 下图我的已经安装过了(注意:使用3以及以上版本执行). 3.打开cmd拖入按回车就好了 代码实现

  • Python实现向好友发送微信消息优化篇

    目录 前言 第二次优化 第三次优化 前言 之前说了怎么写机器码到内存,然后调用.现在说说怎么优化. 用Python发送微信消息给好友 第二次优化 再看一遍c语言的代码 void SendText( wchar_t* wsTextMsg) { // 发送的好友,filehelper是文件传输助手 wchar_t wsWxId[0x10] = L"filehelper"; WxBaseStruct wxWxid(wsWxId); // 发送的消息内容 WxBaseStruct wxText

  • Python实现微信表情包炸群功能

    Python实现微信表情包炸群效果,具体代码如下所示: # -*- coding = utf-8 -*- # @Time : 2021/1/26 15:19 # @Author : 陈良兴 # @File : 微信表情包炸群.py # @Software : PyCharm # 运行程序 > 输入次数 > 回车 > 打开微信对话框 > 将鼠标放置在"发送"按钮处即可 from pynput.keyboard import Controller as KB #控制

随机推荐