文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

扣丁学堂Python培训之基于itch

2023-01-31 08:19

关注

今天扣丁学堂Python培训老师给大家分享一个基于itchat模块实现微信防撤回的案例,比如有时候,女神发来一条消息,说约你看电影,她考虑了一下,又撤回了,不约你了…而你又想知道她究竟发了什么,该怎么办?微信防撤回了解一下。

环境要求

Python3

电脑

安装itchat

pip install itchat

使用代码

新建chehui.py,拷贝以下代码

author = 'jiangwenwen'

import itchat

from itchat.content import *

import time

import re

import os

print("该程序由里客云资源站开发,网址:likeyunba.com")

print("作者:TANKING")

print("打开程序会弹出一个二维码,微信扫码")

print("如果二维码弹不出,那就在你这个程序的同一个目录下找到QR.png双击打开扫码")

print("扫码后,出现Start auto replying就可以实时监控消息了...")

msg_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']

msg_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')

elif msg['Type'] == 'Card':

msg_content = msg'RecommendInfo' + '的名片'

if msg'RecommendInfo' == 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_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

}

}

)

@itchat.msg_register(NOTE, isFriendChat=True, isGroupChat=True, isMpChat=True)

def information(msg):

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")

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()

CMD运行即可。

以上就是关于扣丁学堂Python培训之基于itchat模块实现微信防撤回详解的全部内容,希望对大家的学习有所帮助,想要学好Python开发小编给大家推荐口碑良好的扣丁学堂,扣丁学堂有专业老师制定的Python学习路线图辅助学员学习,此外还有与时俱进的Python课程体系和Python视频教程供大家学习,想要学好Python开发技术的小伙伴快快行动吧。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯