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函数学习笔记
Oct 07 Python
python回调函数用法实例分析
May 09 Python
非递归的输出1-N的全排列实例(推荐)
Apr 11 Python
python爬虫获取多页天涯帖子
Feb 23 Python
Python寻找两个有序数组的中位数实例详解
Dec 05 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
Jan 17 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
Mar 13 Python
介绍一款python类型检查工具pyright(推荐)
Jul 03 Python
python 根据字典的键值进行排序的方法
Jul 24 Python
Python+OpenCV实现实时眼动追踪的示例代码
Nov 11 Python
python实现取余操作的简单实例
Aug 16 Python
Pycharm制作搞怪弹窗的实现代码
Feb 19 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中通过ADODB库实现调用Access数据库之修正版本
2006/12/31 PHP
PHP输入流php://input介绍
2012/09/18 PHP
?牟┛途W扣了一??效果出?? target=
2007/05/27 Javascript
javascript prototype,executing,context,closure
2008/12/24 Javascript
jquery实现表格奇数偶数行不同样式(有图为证及实现代码)
2013/01/23 Javascript
javascript中直接写php代码的方法
2013/07/31 Javascript
js写出遮罩层登陆框和对联广告并自动跟随滚动条滚动
2014/04/29 Javascript
javascritp添加url参数将参数加入到url中
2014/09/25 Javascript
JavaScript和CSS交互的方法汇总
2014/12/02 Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
2016/08/20 Javascript
AngularJs bootstrap搭载前台框架——js控制部分
2016/09/01 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
js学习总结_选项卡封装(实例讲解)
2017/07/13 Javascript
详解vue2.0 使用动态组件实现 Tab 标签页切换效果(vue-cli)
2017/08/30 Javascript
AngularJS 将再发布一个重要版本 然后进入长期支持阶段
2018/01/31 Javascript
Vue组件开发技巧总结
2018/03/04 Javascript
手淘flexible.js框架使用和源代码讲解小结
2018/10/15 Javascript
JS实现获取数组中最大值或最小值功能示例
2019/03/02 Javascript
JavaScript图像放大镜效果实现方法详解
2020/06/28 Javascript
基于JQuery和DWR实现异步数据传递
2020/10/16 jQuery
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
用python代码将tiff图片存储到jpg的方法
2018/12/04 Python
Python两台电脑实现TCP通信的方法示例
2019/05/06 Python
python绘制动态曲线教程
2020/02/24 Python
CSS3属性box-shadow使用详细教程
2012/01/21 HTML / CSS
澳大利亚足球鞋和服装购物网站:Ultra Football
2018/10/11 全球购物
应届生新闻编辑求职信
2013/11/19 职场文书
护理学专业推荐信
2013/12/03 职场文书
演讲稿怎么写
2014/01/07 职场文书
先进集体事迹材料
2014/02/17 职场文书
幼教求职信
2014/03/12 职场文书
青春寄语大全
2014/04/09 职场文书
停车场管理协议书范本
2014/10/08 职场文书
2014年打非治违工作总结
2014/11/13 职场文书
服务承诺书
2015/01/19 职场文书
MySql按时,天,周,月进行数据统计
2022/08/14 MySQL