准备环境

  • python语言环境
  • python解释器-pycharm

itchat介绍

itchat是一个开源的微信个人号接口,通过itchat可以实现微信(好友或微信群)的信息处理,包括文本、图片、小视频、地理位置消息、名片消息、语音消息、动画表情、普通链接、音乐链接、群消息、红包消息、系统消息等,可以对微信的消息进行获取和回复。

itchat使用

  • itchat库的安装
pip install itchat
  • API
    查看地址

pycharm解释器写入代码

#!/usr/bin/env python3
# -*- coding: utf-8 -*-import itchat
from itchat.content import *
import time
import re
import osmsg_information = {}
# 针对表情包的内容
face_bug = None@itchat.msg_register([TEXT, PICTURE, FRIENDS, CARD, MAP, SHARING, RECORDING, ATTACHMENT, VIDEO], isFriendChat=True, isMpChat=True)
def handle_receive_msg(msg):global face_bug# 接收消息的时间msg_time_rec = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())# 在好友列表列表中查询发送信息的好友昵称msg_from = itchat.search_friends(userName=msg['FromUserName'])['NickName']# 信息发送的时间msg_time = msg['CreateTime']# 每条信息的IDmsg_id = msg['MsgId']# 储存信息的内容msg_content = None# 储存分享的连接,比如分享的文章和音乐msg_share_url = None# 如果发送的消息是文本或者好友推荐if msg['Type'] == 'Text' or msg['Type'] == 'Friends':msg_content = msg['Text']print(msg_content)# 如果发送的消息是附件,视频,图片,语音elif msg['Type'] == 'Attachment' or msg['Type'] == 'Video' \or msg['Type'] == 'Picture'\or msg['Type'] == 'Recording':# 内容为下载文件名msg_content = msg['FileName']msg['Text'](str(msg_content))# 如果消息是推荐的名片elif msg['Type'] == 'Card':# 内容是推荐人的昵称和性别msg_content = msg['RecommendInfo']['NickName'] + '的名片'if msg['RecommendInfo']['Sex'] == 1:msg_content += '性别为男'else:msg_content += '性别为女'print(msg_content)# 如果消息为分享的位置信息elif msg['Type'] == 'Map':x, y, location = re.search("<location x=\"(.*?)\" y=\"(.*?)\".*label=\"(.*?)\".*", msg['OriContent']).group(1, 2, 3)if location is None:# 内容为详细地址msg_content = r'纬度->' + x.__str__() + "经度->" + y.__str__()else:msg_content = r"" + location# 如果消息是分享的音乐或者文章,详细的内容为文章的标题或者分享的名字elif msg['Type'] == 'Sharing':msg_content = msg['Text']msg_share_url = msg['Url']print(msg_share_url)face_bug = msg_content# 将信息存储在字典中,每一个msg_id对应一条消息msg_information.update({msg_id: {"msg_from": msg_from, "msg_time": msg_time, "msg_time_rec": msg_time_rec,"msg_type": msg['Type'],"msg_content": msg_content, "msg_share_url": msg_share_url}}
)#这个是用于监听是否有friend消息撤回
@itchat.msg_register(NOTE, isFriendChat=True, isGroupChat=True, isMpChat=True)
def information(msg):# 这里如果这里的msg['Content']中包含消息撤回和id,就执行下面的语句if '撤回了一条消息' in msg['Content']:old_msg_id = re.search("\<msgid\>(.*?)\<\/msgid\>", msg['Content']).group(1)# 得到消息old_msg = msg_information.get(old_msg_id)print(old_msg)# 如果发送的是表情if len(old_msg_id)<11:itchat.send_file(face_bug, toUserName='filehelper')# 发送撤回的提示给文件助手else:msg_body = "【"\+ old_msg.get('msg_from') + "撤回了】\n"\+ old_msg.get("msg_type") + "消息:" + "\n"\+ old_msg.get("msg_time_rec") + "\n"\+ r"" + old_msg.get("msg_content")# 如果分享的文件被撤回了,那么就将分享的url加在msg_body中发送给文件助手if old_msg['msg_type'] == "Sharing":msg_body += "\n就是这个链接>" + old_msg.get('msg_share_url')# 将撤回消息发送到文件助手itchat.send_msg(msg_body, toUserName="filehelper")# 有文件的话也要将文件发送回去if old_msg["msg_type"] == "Picture"\or old_msg["msg_type"] == "Recording"\or old_msg["msg_type"] == "Video"\or old_msg["msg_type"] == "Attachment":file = "@fil@%s" % (old_msg['msg_content'])itchat.send(msg=file, toUserName='filehelper')os.remove(old_msg['msg_content'])# 删除字典旧信息msg_information.pop(old_msg_id)itchat.auto_login(hotReload=True)
itchat.run()

运行之后需要扫描二维码登录,登录后微信手机助手就能监测到对方撤回的消息

下面介绍.py文件如何生成.exe文件,方便做成exe发送给其他人使用
pycharm编辑器Terminal窗口使用

pyinstaller -F .py文件所在绝对路径

成功之后会在python安装路径下的dist文件看到生成的exe文件
PS:python3.6版本下的才能转换成功

转载于:https://www.cnblogs.com/ButterflyEffect/p/10795956.html

python查看微信消息撤回相关推荐

  1. python查看微信撤回消息_python如何查看微信消息撤回

    本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以 ...

  2. python中怎么撤回_python如何查看微信消息撤回

    本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以 ...

  3. python如何撤销_python如何查看微信消息撤回

    本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以 ...

  4. python如何撤回_python如何查看微信消息撤回

    本文为大家分享了python查看微信消息撤回的具体代码,供大家参考,具体内容如下 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以 ...

  5. 利用Python查看微信好友撤回的消息

    效果图如下: 不仅可以查看微信好友撤回的文字消息,如位置.视频.音频.图片等等都可以查看. 直接上源代码: # Python查看微信撤回消息 import re import os import ti ...

  6. python实现查看微信消息撤回

    娱乐(windows系统) 1.安装itchat itchat是一个开源的python微信库,支持发送消息.图片.视频.地图.名片.文件等,还可以实现自动回复等多种功能. 看到的一个文档还不错 htt ...

  7. 如何用Python查看微信好友撤回的消息?

    首先声明,本文主要就是在试图复现这篇文档中所说的: https://cloud.tencent.com/developer/article/1701130 因此要是下文中有什么讲的不清楚的地方,大家也 ...

  8. Python实现微信消息防撤回

    微信(WeChat)是腾讯公司于2011年1月21日推出的一款社交软件,8年时间微信做到日活10亿,日消息量450亿.在此期间微信也推出了不少的功能如:"摇一摇"."漂流 ...

  9. 女朋友发的微信消息撤回了,python一串代码,让你大呼过瘾

    想查看微信好友撤回的消息?Python帮你搞 要说微信最让人恶心的发明,消息撤回绝对能上榜. 比如你现在正和女朋友用微信聊着天,或者跟自己喜欢的女孩子聊着天,一个不留神,你没注意到对方发的消息就被她及 ...

最新文章

  1. 23-爬虫之scrapy框架增量式实时监测数据爬取10
  2. IT技术分类和就业特点
  3. js中call与apply用法
  4. 蓝桥杯JAVA省赛2013-----B------4(黄金连分数)
  5. 模为2的逆元是什么_两种求模m逆元的方法
  6. 计组之存储系统:4、双口RAM和多模块存储器(存取周期、双端口RAM、多体并行存储器、存储体)
  7. Android自定义控件之流式布局
  8. 使用Android Studio打包app
  9. 自动化测试unittest测试框架实例
  10. 如何用c语言调用c++做成的动态链接库
  11. BZOJ1037 ZJOI2008生日聚会(动态规划)
  12. 使用FastDFS在CentOS上搭建简易分布式文件系统
  13. 压测服务器性能上不去,JAVA性能优化思路探究
  14. Iphone8如何投屏到电脑 苹果手机投屏到电脑
  15. 听刘万祥老师讲“风险矩阵分析图”
  16. 联想正在美丽的海南岛搞个大活动,速看
  17. warning: setUpNet DNN module was not built with CUDA backend; switching to CPU错误解决
  18. 多个服务器数据互通_打造生态循环《剑网3:指尖江湖》第二批服务器数据互通...
  19. 英语翻译的重点词汇词组
  20. HTML 个人简历模板简易版

热门文章

  1. 【洛谷】P1145-约瑟夫
  2. operater运算符模块
  3. 微信小程序例子——鼠标拖动效果
  4. 脊髓损伤会引起哪些并发症
  5. iOS启动优化:App 启动耗时 在线监控
  6. 这段py代码能从12306 获取 所有车站信息
  7. 项目组HPL_GPU单机的安装和运行
  8. SimpleAudioEngine音效的使用导致游戏出现卡顿记录
  9. 搞科研快速获取国家自然科学基金委员会项目数据有新路子了
  10. curl 增加header_关于curl header的数据处理