暗恋的女孩子撤回了啥?3步查看微信撤回消息
微信在2014年推出的一个小小的新功能:撤回消息,使用此功能者提神醒脑、神清气爽,但被施用者却可能会抓耳挠腮、咬牙切齿的想知道你到底撤回了啥,这就是所谓的Curiosity kills the cat,用Python就能知道对方撤回了啥,是不是迫不及待的想要了解了?
一、功能设计
我们希望当有好友或者群中有人撤回消息的时候,第一时间能把原消息、发送者信息转发到文件助手中(当然你也可以把消息发回给他,哈哈),这样方便我们查看。
给大家来演示一下实现的功能。
二、功能实现
1.微信撤回消息实现原理
我们先来了解一下微信撤回消息的原理:
其实微信撤回消息原理就是操作者在点击撤回的时候,客户端会自动发一条系统消息:“xxx撤回了一条消息”,然后对方app端收到消息后解析,替换原消息,改个显示的样式即可
给大家演示一下正常消息和撤回消息的内容到底有什么区别:
正常消息:Content='你好骚啊',大家留意一下MsgId='8784390488772995470'
撤回消息:Content是一串xml格式的内容
我们在下面把它格式化看看
<sysmsg type="revokemsg"><revokemsg><session>xxx</session><oldmsgid>1090336364</oldmsgid><msgid>8784390488772995470</msgid><replacemsg><![CDATA["我" 撤回了一条消息]]></replacemsg></revokemsg></sysmsg>
分析上面撤回的Content字段我们发现<msgid>8784390488772995470</msgid>的id与我们之前发送消息的id是一致的,而<replacemsg>这个标签也验证了我们的猜想,确实是用新消息替换原消息。
2.找到被撤回消息
根据抓取正常消息和撤回消息的内容我们发现规则:撤回消息中会包含之前被撤回的那条消息的msgid,那我们只要找到之前那条消息就可以了,而wxpy模块默认为我们缓存了最近的200条消息,所以我们只要遍历这些历史消息然后比较msgid就可以找到被撤回的那条消息啦!
如果你微信消息太过频繁,2分钟之内消息数量超过200,则可以将max_history设置大些。
3.转发被撤回消息
原理也搞懂了,被撤回的消息也找到了,就差最后一步转发消息了,如果你之前玩过wxpy肯定会了吧,只要一行代码就可以将消息转发:
msg.forward(bot.file_helper)
4.代码
原理和过程讲完了,代码贴出来给大家看看,注释还是比较详细。
三、功能验证
四、总结
微信消息防撤回功能实现简单,但实用性很好,目前项目的唯一缺点就是易用性差,简单说就是我们还没有将项目部署服务器,每次使用都得打开电脑然后运行还得一直开着,猪哥考虑后面将项目部署在云服务器上或者打包成apk,这样就使用起来就非常方便了,而且还可以把apk发给朋友,让朋友也体验此功能!
学会这招,再也不用好奇对方到底撤回了啥消息,撤回了啥,我都知道!!!
找个朋友模拟试试?哈哈哈!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69923331/viewspace-2647985/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/69923331/viewspace-2647985/
暗恋的女孩子撤回了啥?3步查看微信撤回消息相关推荐
- python第三方库文件传输助手_python实现文件助手中查看微信撤回消息
利用python实现防撤回,对方撤回的消息可在自己的微信文件传输助手中查看. 如果想变成可执行文件放在电脑中运行,可用pyinstaller将此程序打包成exe文件. pyinstaller 文件名. ...
- python查看微信撤回信息
python查看微信撤回信息 1.简介 2.安装 3.创建python文件,输入源代码 4.运行生成微信网页版二维码,手机扫码登陆即可 1.简介 itchat是一个开源的微信个人号接口,使用pytho ...
- 大学暗恋一个女同学四年,毕业半年后,同学告诉我她等了我四年。【转贴】
从进学校军训的时候开始我就注意到她了,她长的很清秀,也挺文静的,那时候我也很腼腆,只敢在站军姿的时候偷偷的瞄她,每次她眼睛扫过来的时候我都不敢与她对视.就在偷偷瞄她和怕被她发现中,军训就不知不觉的过去 ...
- python查看微信撤回消息_想查看微信好友撤回的消息?Python帮你搞定
要说微信最让人恶心的发明,消息撤回绝对能上榜. 比如你现在正和女朋友用微信聊着天,或者跟自己喜欢的女孩子聊着天,一个不留神,你没注意到对方发的消息就被她及时撤回了,这时你很好奇,好奇她到底发了什么?于 ...
- python查看微信撤回消息_python如何查看微信消息撤回
本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以 ...
- 用PHP查看微信撤回的消息,python实现文件助手中查看微信撤回消息
利用python实现防撤回,对方撤回的消息可在自己的微信文件传输助手中查看. 如果想变成可执行文件放在电脑中运行,可用pyinstaller将此程序打包成exe文件. pyinstaller 文件名. ...
- Python3爬虫查看微信撤回消息
导语 赋闲在家几天,想鼓捣点简单又好玩的脚本分享给大家,于是就有了这篇文章~~~ 本文将利用Python记录微信好友/微信群中他人撤回的消息,并将这些消息通过文件传输助手发送到自己的手机上. 让我们愉 ...
- 使用Python,不到百行代码查看微信撤回消息!
微信在2014年推出的一个小小的新功能:撤回消息,使用此功能者提神醒脑.神清气爽,但被施用者却可能会抓耳挠腮.咬牙切齿的想知道你到底撤回了啥,这就是所谓的好奇害死猫(Curiosity kills t ...
- 用Python实现自动抢红包以及查看微信撤回消息
欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练.PDF电子文档.面试集锦.学习资料等. 前言 曾经有一份很大的红包,摆在我的面前,我没有好 ...
最新文章
- 杂七杂八(1)——如何查看本机的.NET Framework版本
- 学php好不,怎么学好php
- BCEWithLogitsLoss的使用案例
- [设计模式]抽象工厂模式
- 指定端口传输_一段话告诉你什么是端口
- 北大教授最短毕业致辞。#人性的可爱 #饶毅#自我尊重
- 双表查询java代码_多表增删改查
- centos提示找不到netstat 和 ifconfig命令的问题
- VB 字符串续行符最多25行…………
- 以太坊概念知识入门篇
- Linux 卸载JDK以及安装步骤
- 如果出现 Cause: java.lang.ClassNotFoundException: Cannot find class: com.itheima.domian.User
- linux 内核移植和根文件系统的制作
- 计算机主机风扇安装方法,散热风扇怎么装 电脑机箱散热风扇安装图解教程 (全文)...
- CC2640R2F BLE5.0 CC2640R2F软件架构
- Goldsrc 地图 BSP 文件格式规范
- 学计算机二手笔记本,二手笔记本中的套路 坑你就跟玩一样
- TSF微服务治理实战系列(四)——服务安全
- Android问题——解决Toast在APP通知关闭不显示
- 当了12年大学教师,跟大家聊聊嵌入式工程师,硬核单片机编程思想
热门文章
- GPX Data——GPX数据
- Linux基础环境搭建(CentOS7)- 安装Flume
- android通讯录操作批量查询删除更新头像vcf文件写入读取便捷方法
- sysadmin默认密码_支持分布式sysadmin团队的5种工具
- 无线法则亚服服务器,《无限法则》自带亚服 1060冰龙抢先体验
- 判断回文数的两种解法
- SAP R/3系统技术
- opencv图片局部放大镜
- c语言中int占两个字节short,选择.设C语言中,int类型数据占2个字节,则short类型数据占几个字节...
- shell迷你版监控脚本