使用PyWeChatSpy自動回覆微信拍一拍功能的實現程式碼
前不久微信上線了拍一拍功能,剛推出就被有才的網友玩壞了。
還有更多沒有節操的拍法這裡就不展示了。
但拍一拍屬於弱提示,只有在聊天介面才能感受到。如果不在微信介面,被人拍了沒辦法及時迴應,這裡給大家介紹一下如何使用PyWeChatSpy(https://github.com/veikai/PyWeChatSpy)來用表情包迴應拍一拍。
1、首先我們準備一些表情圖,這裡我選了沙雕熊貓頭
2、安裝2.8.0.133版本的PC微信客戶端(https://share.weiyun.com/5AwuXRG)
3、安裝Python3.8.3_x64 32位系統(https://www.python.org/ftp/python/3.8.3/python-3.8.3-amd64.exe)的同學可以去官網自行下載32位安裝包
4、開啟cmd 輸入pip install PyWeChatSpy 回車執行
5、這時候需要我們編碼了,先新建一個app.py檔案
先引入PyWeChatSpy模組、正則re模組和隨機random模組 re用於匹配訊息內容,random用於隨機選取回復圖片
from PyWeChatSpy import WeChatSpy import random import re
接著定義一個回覆處理函式my_parser
def my_parser(data): pass
然後例項化一個WeChatSpy類
spy = WeChatSpy(parser=my_parser)
最後編寫my_parser函式處理邏輯
if data["type"] == 5: # 判斷是微信訊息資料 for msg in data["data"]: # 遍歷微信訊息 if msg["msg_type"] == 10000: # 判斷是微信拍一拍系統提示 # 因為微信系統訊息很多 因此需要用正則匹配訊息內容進一步過濾拍一拍提示 # {'self': 0,'msg_type': 10000,'wxid1': '179xxxxxx72@chatroom','content': '"Mandy的小腦袋" 拍了拍你'} m = re.search('".*" 拍了拍你',msg["content"]) if m: # 搜尋到了匹配的字串 判斷為拍一拍 image_path = f"images/{random.randint(1,7)}.jpg" # 隨機選一張回覆用的圖片 spy.send_file(msg["wxid1"],image_path) # 傳送圖片
執行程式碼
if __name__ == '__main__': spy.run() # 執行程式碼
大功告成 這時候如果再有人拍你 無論是群聊還是私聊都會自動回覆設定好的圖片
整體程式碼如下:
from PyWeChatSpy import WeChatSpy import random import re def my_parser(data): if data["type"] == 5: # 判斷是微信訊息資料 for msg in data["data"]: # 遍歷微信訊息 if msg["msg_type"] == 10000: # 判斷是微信拍一拍系統提示 # 因為微信系統訊息很多 因此需要用正則匹配訊息內容進一步過濾拍一拍提示 # {'self': 0,msg["content"]) if m: # 搜尋到了匹配的字串 判斷為拍一拍 image_path = f"images/{random.randint(1,7)}.jpg" # 隨機選一張回覆用的圖片 spy.send_file(msg["wxid1"],image_path) # 傳送圖片 spy = WeChatSpy(parser=my_parser) # 例項化WeChatSpy類 if __name__ == '__main__': spy.run() # 執行程式碼
app.py存放的地方要和圖片資料夾一致,否則無法正確回覆,如圖片路徑D:\images,app.py存放路徑為D:\app.py 暫不支援中文路徑
到此這篇關於使用PyWeChatSpy自動回覆微信拍一拍功能的文章就介紹到這了,更多相關PyWeChatSpy自動回覆微信拍一拍內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!