利用Python找回微信撤回信息
一條撤回的微信消息,就像一個秘密,讓你迫切地想去一探究竟;或如一個誘餌,瞬間勾起你強烈的興趣。你想知道,那是怎樣的一句話?是對方不慎講出的真話,還是一句發(fā)錯了對象的話?
總之,這個撤回的消息,讓人頓生×××。這個時候,就是技術(shù)人員出馬的時候了。
Python查看微信撤回消息參考代碼:
import itchat from itchat.content import * import os import time import xml.dom.minidom # 解析xml模塊 # 這是保存撤回消息的文件目錄(如:圖片、語音等) temp = 'C:/Users/Administrator/Desktop/CrawlerDemo' + '/' + '撤回的消息' if not os.path.exists(temp): os.mkdir(temp) itchat.auto_login(True) # 自動登錄 dict = {} # 定義一個字典 # 這是一個裝飾器,給下面的函數(shù)添加新功能 # 能夠捕獲好友發(fā)送的消息,并傳遞給函數(shù)參數(shù)msg @itchat.msg_register([TEXT, PICTURE, FRIENDS, CARD, MAP, SHARING, RECORDING, ATTACHMENT, VIDEO]) # 文本,語音,圖片 def resever_info(msg): global dict # 聲明全局變量 info = msg['Text'] # 取出消息內(nèi)容 msgId = msg['MsgId'] # 取出消息標識 info_type = msg['Type'] # 取出消息類型 name = msg['FileName'] # 取出消息文件名 # 取出消息發(fā)送者標識并從好友列表中檢索 fromUser = itchat.search_friends(userName=msg['FromUserName'])['NickName'] ticks = msg['CreateTime'] # 獲取信息發(fā)送的時間 time_local = time.localtime(ticks) dt = time.strftime("%Y-%m-%d %H:%M:%S", time_local) # 格式化日期 # 將消息標識和消息內(nèi)容添加到字典 # 每一條消息的唯一標識作為鍵,消息的具體信息作為值,也是一個字典 dict[msgId] = {"info": info, "info_type": info_type, "name": name, "fromUser": fromUser, "dt": dt} @itchat.msg_register(NOTE) # 監(jiān)聽系統(tǒng)提示 def note_info(msg): # 監(jiān)聽到好友撤回了一條消息 if '撤回了一條消息' in msg['Text']: # 獲取系統(tǒng)消息中的Content結(jié)點值 content = msg['Content'] # Content值為xml,解析xml doc = xml.dom.minidom.parseString(content) # 取出msgid標簽的值 result = doc.getElementsByTagName("msgid") # 該msgId就是撤回的消息標識,通過它可以在字典中找到撤回的消息信息 msgId = result[0].childNodes[0].nodeValue # 從字典中取出對應消息標識的消息類型 msg_type = dict[msgId]['info_type'] if msg_type == 'Recording': # 撤回的消息為語音 recording_info = dict[msgId]['info'] # 取出消息標識對應的消息內(nèi)容 info_name = dict[msgId]['name'] # 取出消息文件名 fromUser = dict[msgId]['fromUser'] # 取出發(fā)送者 dt = dict[msgId]['dt'] # 取出發(fā)送時間 recording_info(temp + '/' + info_name) # 保存語音 # 拼接提示消息 send_msg = '【發(fā)送人:】' + fromUser + '\n' + '發(fā)送時間:' + dt + '\n' + '撤回了一條語音' itchat.send(send_msg, 'filehelper') # 將提示消息發(fā)送給文件助手 # 發(fā)送保存的語音 itchat.send_file(temp + '/' + info_name, 'filehelper') del dict[msgId] # 刪除字典中對應的消息 print("保存語音") elif msg_type == 'Text': text_info = dict[msgId]['info'] # 取出消息標識對應的消息內(nèi)容 fromUser = dict[msgId]['fromUser'] # 取出發(fā)送者 dt = dict[msgId]['dt'] # 取出發(fā)送時間 # 拼接提示消息 send_msg = '【發(fā)送人:】' + fromUser + '\n' + '發(fā)送時間:' + dt + '\n' + '撤回內(nèi)容:' + text_info # 將提示消息發(fā)送給文件助手 itchat.send(send_msg, 'filehelper') del dict[msgId] # 刪除字典中對應的消息 print("保存文本") elif msg_type == 'Picture': picture_info = dict[msgId]['info'] # 取出消息標識對應的消息內(nèi)容 fromUser = dict[msgId]['fromUser'] # 取出發(fā)送者 dt = dict[msgId]['dt'] # 取出發(fā)送時間 info_name = dict[msgId]['name'] # 取出文件名 picture_info(temp + '/' + info_name) # 保存圖片 # 拼接提示消息 send_msg = '【發(fā)送人:】' + fromUser + '\n' + '發(fā)送時間:' + dt + '\n' + '撤回了一張圖片' itchat.send(send_msg, 'filehelper') # 將圖片發(fā)送給文件助手 # 發(fā)送保存的語音 itchat.send_file(temp + '/' + info_name, 'filehelper') del dict[msgId] # 刪除字典中對應的消息 print("保存圖片") itchat.run()
到此這篇關(guān)于利用Python找回微信撤回信息的文章就介紹到這了,更多相關(guān)Python找回撤回信息內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python網(wǎng)絡(luò)編程 Python套接字編程
這篇文章主要為大家詳細介紹了Python網(wǎng)絡(luò)編程的相關(guān)資料,Python套接字編程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09python神經(jīng)網(wǎng)絡(luò)Keras搭建RFBnet目標檢測平臺
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)Keras搭建RFBnet目標檢測平臺,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05基于Python實現(xiàn)股票數(shù)據(jù)分析的可視化
在購買股票的時候,可以使用歷史數(shù)據(jù)來對當前的股票的走勢進行預測,這就需要對股票的數(shù)據(jù)進行獲取并且進行一定的分析。本文將介紹如何通過Python實現(xiàn)股票數(shù)據(jù)分析的可視化,需要的可以參考一下2021-12-12