1. 程式人生 > >基於wxpy的微信防撤回

基於wxpy的微信防撤回

目前存在的問題是圖片或者檔案大小有限制,圖片可以先擇先壓縮,在傳送,但是壓縮之後感覺太小,就沒有加入這個功能。

# -*- coding:utf-8 -*-

from wxpy import *
import re
import os
import ctypes

bot = Bot(cache_path=True)

# 下載檔案並向檔案傳輸助手傳送
def dlDoc(fPath,ra,content,flag):
    ra.get('Text')(fPath)
    bot.file_helper.send(content)
    if 4 == flag:
        bot.file_helper.send_image(fPath)
    elif 7 == flag:
        bot.file_helper.send_video(fPath)
    else:
        bot.file_helper.send_file(fPath)
    os.remove(fPath)

# 文字 TEXT = 'Text'
# 位置 MAP = 'Map' 1
# 名片 CARD = 'Card' 2
# 分享 SHARING = 'Sharing' 3
# 圖片 PICTURE = 'Picture'  4
# 語音 RECORDING = 'Recording' 5
# 檔案 ATTACHMENT = 'Attachment' 6
# 視訊 VIDEO = 'Video' 7
@bot.register(except_self=False, run_async=True, enabled=True)
def handleReceiveMsg(msg):
    '''
    監聽訊息
    :param msg:
    :return:
    '''
    ra = msg.raw
    mss = msg.bot.messages
    le = len(mss)

    if ra['Status'] == 4:
        # 獲取訊息ID
        oldmsgid = re.search(re.compile('<msgid>(.*?)</msgid>', re.S),ra['Content']).group(1)
        for i in range(le-1,-1,-1):
            if oldmsgid == str(mss[i].id):
                name = msg.chat.name
                if name == None or name == '':
                    name = msg.chat.nick_name
                if mss[i].type == 'Text':
                    bot.file_helper.send(name+'撤回了一條訊息:'+ mss[i].text)
                    break
                elif mss[i].type == 'Map':
                    bot.file_helper.send(name + '撤回了一個位置資訊:' + (mss[i].location)['label'])
                    break
                elif mss[i].type == 'Card':
                    card = mss[i].card
                    name = card.name
                    if name == None or name == '':
                        name = card.nick_name
                    sex = str(card.sex)
                    if sex == '1':
                        sex = '男'
                    else:
                        sex = '女'
                    bot.file_helper.send(name + '撤回了一張名片:名稱:'+ name +',性別:' + sex)
                    break
                elif mss[i].type == 'Sharing':
                    bot.file_helper.send(name + '撤回了一個分享:' + mss[i].url)
                    break
                elif mss[i].type == 'Picture':
                    dlDoc(mss[i].file_name,mss[i].raw,name+'撤回了一張圖片,圖片正在載入。。。')
                    break
                elif mss[i].type == 'Recording':
                    dlDoc(mss[i].file_name, mss[i].raw, name + '撤回了一條語音,語音正在載入。。。')
                    break
                elif mss[i].type == 'Attachment':
                    dlDoc(mss[i].file_name, mss[i].raw, name + '撤回了一個檔案,檔案正在載入。。。')
                    break
                elif mss[i].type == 'Video':
                    dlDoc(mss[i].file_name, mss[i].raw, name + '撤回了一個視訊,視訊正在載入。。。')
                    break
embed()


相關推薦

基於wxpy撤回

目前存在的問題是圖片或者檔案大小有限制,圖片可以先擇先壓縮,在傳送,但是壓縮之後感覺太小,就沒有加入這個功能。# -*- coding:utf-8 -*- from wxpy import * import re import os import ctypes bot =

python使用wxpy輕鬆實現撤回

最近比較閒就隨便瞎看,看到了微信防撤回就順便跟著學著實現一下 使用的是wxpy,安裝方法pip install wxpy(我使用的是python2.7),這樣實現起來比較快,反正也只是練手 首現看了兩個別人實現的程式碼,然後看了看wxpy的文件:http://wxpy.r

撤回

con rev hand sts location end pat msg alt 1 # -*-encoding:utf-8-*- 2 import os 3 import re 4 import shutil 5 import time

用Python教你撤回(文字、圖片、語音、視訊、名片等...)

大家在使用微信過程中,有時候訊息還沒看到,就被撤回了。畢竟好奇心大家都有,明知到訊息被撤回了,就更想去看一下是什麼內容心裡想著萬一是女神給我表白了呢.. 今天就用Python來做個微信防撤回的小功能。支援文字、圖片、語音、視訊、名片的防撤回。 思路:利用itchat庫將每次接收到的訊息進行快取。監

Python3.5+PyQt5多執行緒+itchat實現撤回桌面版程式碼(二)

weChatThread執行緒類 之前一直不會python多執行緒,寫這個程式的時候,發現不用多執行緒會陷入無限未響應狀態。於是學了半天python多執行緒,但是在主函式裡寫的時候,發現一個問題,Ui主執行緒和工作執行緒沒有分離,使用itchat等庫的時候會堵

Python3.5+PyQt5多執行緒+itchat實現撤回桌面版(一)

前幾日在某乎看到有大神用itchat實現了微信防撤回功能,,覺得很有趣,看到下面評論很多人求桌面版,於是乎,手癢便利用清明節幾天時間做了一個簡陋的桌面程式。廢話不多說,先上圖位敬。 執行環境 win10專業版64位系統1703創造者更新 開發環

Mac多開與撤回分享

一、關閉Mac上微信 二、開啟應用程式-實用工具-Terminal(終端) 執行下面的命令 輸入curl -o- -L https://raw.githubusercontent.com/lm

Python3.5+PyQt5多執行緒+itchat實現撤回桌面版程式碼

weChatThread執行緒類 之前一直不會python多執行緒,寫這個程式的時候,發現不用多執行緒會陷入無限未響應狀態。於是學了半天python多執行緒,但是在主函式裡寫的時候,發現一個問題,Ui主執行緒和工作執行緒沒有分離,使用itchat等庫的時候會堵塞主執行緒,換句話說PyQt中

Python3.5+PyQt5多線程+itchat實現撤回桌面版代碼

logs rep not cio backup 界面 sel store for weChatThread線程類 之前一直不會python多線程,寫這個程序的時候,發現不用多線程會陷入無限未響應狀態。於是學了半天python多線程,但是在主函數裏寫的時候,發現一個問題,

手把手教會你Android手機QQ和撤回

如今QQ和微信都能撤回訊息,當對方撤回了訊息,想看又看不了,是不是很想知道對方撤回了什麼?接下來我就來教會大家阻止對方QQ撤回的訊息和檢視微信撤回的訊息。 1.首先,手機需要獲取root許可權(目前有很多app支援手機一鍵root);然後下載安裝Xpoesd框架並激活(Xp

Python 實現撤回功能

在微信上突然看到“XXX撤回一條訊息”的時候,心裡癢不癢?現在就教你如何實現訊息防撤回的功能。不限手機型號、手機無需root,只要微訊號可以登上網頁版就可以了(部分不常用和新申請的賬號會登不上網頁版)。 環境 Centos7 python2.

基於springboot公眾號開發,幾分鐘學會自動回復

ssa star 點擊 stat html asn document text cit 效果圖 1.準備工作 申請微信訂閱號(個人只能申請訂閱號,而且沒什麽功能,也無法認證),申請完畢,點擊 開發=>基本配置,如下圖: 服務器配置需要有 域名 80端口,我猜

wxpy應用

http alt lib In 分享 library bubuko version jpg /Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/wxpy wxpy

Orangepi 香橙派 安裝 Debian 系統 並且 安裝 wxpy (機器人) 入坑記錄

硬體準備:Orangepi-PC 香橙派 (早期的型號,1G RAM ,資源還是很豐富的) 軟體準備:Debian_jessie_mini.img (來自官網的系統),SecureCRT 一、安裝Debian 剛買下Orangepi的時候,我安裝的是Kali,但是感覺這個系統附帶的軟體太

女神把訊息撤回後好慌,幾十行程式碼檢視撤回訊息!

曾幾何時Python對我說:"時日已不多,速度學Python"。於是乎上天讓我看到了一個基於python的微信開源庫:itchat,玩的不亦樂乎,接著我做了一個程式,可以把微信好友撤回的資訊收集起來,然後會自動傳送到我的個人微信的檔案傳輸助手。     程

基於mpvue小程式 promise+wx.request 封裝請求

第一步: 在微信小程式中引入es6-promise 如果是基於mpvue框架進行微信小程式開發,只需要 npm install es6-promise 第二步: 在專案中建立一個utils資料夾,主要用來裝一些用到的工具 然後再utils下面建立一個requet.js

基於base64小程式生成二維碼外掛-weapp-qrcode.js

weapp-qrcode PS: 主要在node-yaqrcode專案基礎上進行改造適應微信小程式 說明 只需要在 wxml 檔案中增加個image標籤動態引用base64編碼即可 <image src="{{qrcodeURL}"> </image> JS呼叫例子: c

Orangepi 香橙派 安裝 Debian 系統 並且 安裝 wxpy (機器人) 入坑記錄

硬體準備:Orangepi-PC 香橙派 (早期的型號,1G RAM ,資源還是很豐富的) 軟體準備:Debian_jessie_mini.img (來自官網的系統),SecureCRT 一、安裝Debian 剛買下Orangepi的時候,我安裝的是Kali,但是感覺這

最全封辦法總結分析,一分鐘看懂

微信,雖然只是一個聊天工具。 但對於許多人而言,它還是自己的人脈圈,遊戲圈,每天都能約幾個好友打打麻將,鬥鬥地主; 是自己的店鋪,靠著自己推廣和堅持,經營著一群粉絲,分享產品,養家餬口; 是一個私人銀行,每天都要收發紅包,理財賺錢。 如果您的微信一不小心被封掉,那也就意味著你的玩家、

手把手教你用一個二維碼搞定封,親測有效

今天要分享的是用一個二維碼成功實現微信防封的經驗,別不信,已經有不少人都用過了。 適合人群:擔心自己的微訊號、微信群被封的人群,比如做微商、代理、淘寶客的群主。 目標:幫助這部分人群避免被封號封群。 其實,這個防封的原理和過程很簡單,就是把風險轉移出去,不在微信裡涉及敏感話題內容。