Python神级操作,还原已撤回的微信消息

Python神级操作,还原已撤回的微信消息项目环境语言:Python3编辑器:Pycharm导包效果展示以下截图显示的撤回消息类型依次是文字消息、微信自带表情、图片、语音、定位地图、名片、公众号文章、音乐、视频。有群里撤回的,也有个人号撤回的。图文来源:http://kks.me/aULmF图文来源:http://kks.me/aULmF程序思路主要由两部分组成:handler_receiv…

大家好,又见面了,我是你们的朋友全栈君。

项目环境

语言:Python3

编辑器:Pycharm

导包效果展示

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

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 提示的错误,但是不影响发送撤回消息的功能,后期加个异常捕捉机制优化下。

赶紧动手试试吧,把你朋友撤回的消息发给 TA 看看,看看他是什么反应,有趣的撤回消息发到朋友圈去提高逼格,奈斯!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148521.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 详解Linux双网卡绑定之bond0「建议收藏」

    1、什么是bond?  网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术。Kernels2.4.12及以后的版本均供bonding模块,以前的版本可以通过patch实现。2、实现原理:  网卡工作在混杂(promisc)模式,接收到达网卡的所有数据包,tcpdump工作用的也是混杂模式(promisc),将两块网卡的MAC地址…

  • THINKPHP and or 模板语句书写

    THINKPHP and or 模板语句书写THINKPHP and or 模板语句书写

  • Centos 6安装完美搭建mysql、php、apache之旅

    Centos 6安装完美搭建mysql、php、apache之旅

  • Teleport Ultra/Pro 1.72 安装+便携版(备份网站内容工具+离线网页浏览)[通俗易懂]

    Teleport Ultra/Pro 1.72 安装+便携版(备份网站内容工具+离线网页浏览)[通俗易懂]TeleportPro由美国TennysonMaxwell公司开发,曾被PCMagazine评为”编辑选择奖”、ZDNet评为五星。它可以完全或部分下载一个网站上的内容,使用户能够离线浏览;可以在硬盘上创建一个与原网站完全相同的镜象;可以在网站上寻找并下载某一类型的文件;可以探测并记录一个网站的所有网页和文件的清单;可以从一个中心网站探测每一个与之链接的网站。TeleportPro支持HTML4.0、CSS2.0、DHTML和Javaapplet,实现了能够处理所有类型网站上的文件;它可以同..

  • 复试的时候面试官问我还有什么问题(和面试官聊得很好但没有录用)

    我是一名程序员,我的主要编程语言是Java,我更是一名Web开发人员,所以我必须要了解HTTP,所以本篇文章就来带你从HTTP入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得05年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学xxx家里有网,每…

  • 网学天地考研资料分享_零极区块链怎么赚钱

    网学天地考研资料分享_零极区块链怎么赚钱孤荷凌寒自学第189天区块链103天Dapp058【主要内容】今天继续学习实战,终于完全实现一个波菜类的猜大小的智能合约,并开始准备了解erc721合约标准。共耗时26分钟。(此外整理作笔记花费

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号