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


Posted in Python onJune 18, 2019

导包效果展示

以下截图显示的撤回消息类型依次是文字消息、微信自带表情、图片、语音、定位地图、名片、公众号文章、音乐、视频。有群里撤回的,也有个人号撤回的。

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

图文来源:http://kks.me/aULmF

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

图文来源:http://kks.me/aULmF

程序思路

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

主要由两部分组成:

handler_receive_msg():处理接收到的消息,将消息临时放在字典中。

send_msg_helper():将撤回的消息自动发给文件传输助手。

程序分析

首先,我们定义一个字典来储存消息,定义消息储存的临时路径。

接收信息处理

先将我们需要处理的消息用 msg_register 装饰器进行注册,格式化本地时间,定义消息 ID 和消息时间。如果是群成员而且是自己微信好友撤回消息,则显示撤回消息的名称是你备注的名字,如果没有备注名字,则显示名称为微信昵称。

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

获取你的所有群的消息,判断出撤回的消息来自哪个群,显示出群名称。

个人消息处理

如果为个人聊天信息,也是优先显示备注名称,没有备注名就显示昵称。

各类型消息处理

用判断语句对各种类型的消息进行处理,包括文字消息、微信自带的表情和收藏的表情、图片、语音、位置、名片、分享、附件、视频。多条件时这里用了 in 的用法,还记得之前讲Python 优雅的写法文章里把用 or 连接条件改成用 in,代码更简洁,这样我们通过项目不断的巩固之前学到的知识点,这样才能不断进步。

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

更新信息字典

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

处理撤回消息

先判断是否是撤回消息,将撤回消息发送到你的文件传输助手里,把上面函数储存的消息的发送人、发送类型、发送时间、撤回的内容发出来。以下是部分代码。

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

主函数

如果你电脑中有安装 Python 环境,在编辑器中直接运行源码或者在 cmd 中运行 py 文件即可。源码获取方式在文末给出。有需要的话以后可以做成界面化工具,挂在服务器上,支持做成界面化工具的点个赞看看,我看看需求量,哈哈。

写在最后

今天的分享就到这里了,需要优化的地方:撤回的视频只支持查看微信自带拍的视频,非微信自带拍的视频打开无法查看。长时间运行时会报 ConnectionError 提示的错误,但是不影响发送撤回消息的功能,后期加个异常捕捉机制优化下。

以上所述是小编给大家介绍的Python 实现还原已撤回的微信消息,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
基于Python实现的扫雷游戏实例代码
Aug 01 Python
python中的错误处理
Apr 10 Python
详解 Python中LEGB和闭包及装饰器
Aug 03 Python
Python中列表与元组的乘法操作示例
Feb 10 Python
Python编写一个优美的下载器
Apr 15 Python
python中int与str互转方法
Jul 02 Python
Python补齐字符串长度的实例
Nov 15 Python
python 读取dicom文件,生成info.txt和raw文件的方法
Jan 24 Python
Django结合ajax进行页面实时更新的例子
Aug 12 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
Oct 11 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
Dec 12 Python
python 调用API接口 获取和解析 Json数据
Sep 28 Python
PyQt4编程之让状态栏显示信息的方法
Jun 18 #Python
Python直接赋值、浅拷贝与深度拷贝实例分析
Jun 18 #Python
python实现五子棋游戏
Jun 18 #Python
解决python中使用PYQT时中文乱码问题
Jun 17 #Python
pyqt5 tablewidget 利用线程动态刷新数据的方法
Jun 17 #Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
Jun 17 #Python
python3.6根据m3u8下载mp4视频
Jun 17 #Python
You might like
php 无限极分类
2008/03/27 PHP
php中文乱码问题的终极解决方案汇总
2017/08/01 PHP
PHP 中魔术常量的实例详解
2017/10/26 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
实例介绍PHP中zip_open()函数用法
2019/02/15 PHP
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
用js判断输入是否为中文的函数
2014/03/10 Javascript
jQuery使用CSS()方法给指定元素同时设置多个样式
2015/03/26 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
2015/08/12 Javascript
JS实现星星评分功能实例代码(两种方法)
2016/06/09 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
JavaScript中 DOM操作方法小结
2017/04/25 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
JavaScript变量作用域_动力节点Java学院整理
2017/06/27 Javascript
jquery拖动改变div大小
2017/07/04 jQuery
Js面试算法详解
2018/04/08 Javascript
vue 设置 input 为不可以编辑的实现方法
2019/09/19 Javascript
Python中的jquery PyQuery库使用小结
2014/05/13 Python
python通过定义一个类实例作为ftp回调方法
2015/05/04 Python
python pytest进阶之xunit fixture详解
2019/06/27 Python
Python线上环境使用日志的及配置文件
2019/07/28 Python
用python拟合等角螺线的实现示例
2019/12/27 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
如何将PySpark导入Python的放实现(2种)
2020/04/26 Python
Django项目创建及管理实现流程详解
2020/10/13 Python
Lulu Guinness露露·吉尼斯官网:红唇包
2019/02/03 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
生日宴会主持词
2014/03/20 职场文书
诚信考试承诺书
2014/03/27 职场文书
教师自我剖析材料(四风问题)
2014/09/30 职场文书
常务副县长“四风”个人对照检查材料思想汇报
2014/10/02 职场文书
教师三严三实学习心得体会
2014/10/11 职场文书
贫困生助学金感谢信
2015/01/21 职场文书
经理聘任证明
2015/03/02 职场文书
优秀团员主要事迹材料
2015/11/05 职场文书
图文详解Nginx版本平滑升级方案
2021/09/15 Servers