最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)微信消息防撤回功能的實例代碼

 更新時間:2019年04月29日 11:15:02   作者:豬哥66  
這篇文章主要介紹了Python實現(xiàn)微信消息防撤回 ,需要的朋友可以參考下

微信(WeChat)是騰訊公司于2011年1月21日推出的一款社交軟件,8年時間微信做到日活10億,日消息量450億。在此期間微信也推出了不少的功能如:“搖一搖”、“漂流瓶”、“朋友圈”、“附近的人”、“公眾平臺”、“小程序”等等,涵蓋了我們生活的方方面面,微信正在慢慢踐行著他們的口號:微信,是一個生活方式

一、背景介紹

產(chǎn)品的更新迭代必然會伴隨著功能的推出和下線,今天我們要講的便是微信在2014年推出的一個小小的新功能:撤回消息,使用此功能者提神醒腦、神清氣爽,但被施用者卻可能會抓耳撓腮、咬牙切齒的想知道你到底撤回了啥,這就是所謂的好奇害死貓(Curiosity kills the cat),今天我們就來用Python實現(xiàn)防微信消息撤回,滿足一下大家的好奇心!

二、功能設(shè)計

我們希望當(dāng)有好友或者群中有人撤回消息的時候,第一時間能把原消息、發(fā)送者信息轉(zhuǎn)發(fā)到文件助手中(當(dāng)然你也可以把消息發(fā)回給他,哈哈),這樣方便我們查看。

給大家來演示一下實現(xiàn)的功能。

三、功能實現(xiàn)

1.微信撤回消息實現(xiàn)原理

我們先來了解一下微信撤回消息的原理:

其實微信撤回消息原理就是操作者在點擊撤回的時候,客戶端會自動發(fā)一條系統(tǒng)消息:“xxx撤回了一條消息”,然后對方app端收到消息后解析,替換原消息,改個顯示的樣式即可

豬哥給大家演示一下正常消息和撤回消息的內(nèi)容到底有什么區(qū)別:

正常消息:Content='你好騷啊',大家留意一下MsgId='8784390488772995470'

撤回消息:Content是一串xml格式的內(nèi)容


我們在下面把它格式化看看

<sysmsg type="revokemsg">
 <revokemsg>
 <session>xxx</session>
 <oldmsgid>1090336364</oldmsgid>
 <msgid>8784390488772995470</msgid>
 <replacemsg><![CDATA["豬哥" 撤回了一條消息]]></replacemsg>
 </revokemsg>
</sysmsg>

分析上面撤回的Content字段我們發(fā)現(xiàn)<msgid>8784390488772995470</msgid>的id與我們之前發(fā)送消息的id是一致的,而<replacemsg>這個標(biāo)簽也驗證了我的猜想,確實是用新消息替換原消息。

2.找到被撤回消息

根據(jù)抓取正常消息和撤回消息的內(nèi)容我們發(fā)現(xiàn)規(guī)則:撤回消息中會包含之前被撤回的那條消息的msgid,那我們只要找到之前那條消息就可以了,而wxpy模塊默認(rèn)為我們緩存了最近的200條消息,所以我們只要遍歷這些歷史消息然后比較msgid就可以找到被撤回的那條消息啦!


如果你微信消息太過頻繁,2分鐘之內(nèi)消息數(shù)量超過200,則可以將max_history設(shè)置大些。

3.轉(zhuǎn)發(fā)被撤回消息

原理也搞懂了,被撤回的消息也找到了,就差最后一步轉(zhuǎn)發(fā)消息了,如果你之前玩過wxpy肯定會了吧,只要一行代碼就可以將消息轉(zhuǎn)發(fā):

msg.forward(bot.file_helper)

4.代碼

原理和過程講完了,代碼貼出來給大家看看,注釋還是比較詳細(xì),有不懂得話可以在學(xué)習(xí)群中問我。

四、功能驗證


五、總結(jié)

微信消息防撤回功能實現(xiàn)簡單,但實用性很好,目前項目的唯一缺點就是易用性差,簡單說就是我們還沒有將項目部署服務(wù)器,每次使用都得打開電腦然后運(yùn)行還得一直開著,豬哥考慮后面將項目部署在云服務(wù)器上或者打包成apk,這樣就使用起來就非常方便了,而且還可以把a(bǔ)pk發(fā)給朋友,讓朋友也體驗此功能!

學(xué)會這招,再也不用好奇對方到底撤回了啥消息,快下載項目試試吧!下載項目后可直接運(yùn)行不需要修改代碼!

Github項目地址:https://github.com/pig6/wxrobot

wxpy官方文檔:https://wxpy.readthedocs.io/zh/latest

總結(jié)

以上所述是小編給大家介紹的Python實現(xiàn)微信消息防撤回功能的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Python實現(xiàn)有趣的親戚關(guān)系計算器

    Python實現(xiàn)有趣的親戚關(guān)系計算器

    每年的春節(jié),都會有一些自己幾乎沒印象但父母就是很熟的親戚,關(guān)系凌亂到你自己都說不清。本文就來用Python制作一個有趣的親戚關(guān)系計算器,感興趣的可以了解一下
    2023-01-01
  • python獲取目錄下所有文件的方法

    python獲取目錄下所有文件的方法

    這篇文章主要介紹了python獲取目錄下所有文件的方法,實例分析了Python中os模塊下walk方法的使用技巧,需要的朋友可以參考下
    2015-06-06
  • Python如何省略括號方法詳解

    Python如何省略括號方法詳解

    這篇文章主要介紹了Python如何省略括號方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • django修改models重建數(shù)據(jù)庫的操作

    django修改models重建數(shù)據(jù)庫的操作

    這篇文章主要介紹了django修改models重建數(shù)據(jù)庫的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 使用Python快速生成chrome插件相關(guān)文件結(jié)構(gòu)

    使用Python快速生成chrome插件相關(guān)文件結(jié)構(gòu)

    本文主要介紹了如何使用Python編寫一個程序,它允許用戶創(chuàng)建一些特定文件并將它們保存在指定的文件夾中,同時也能夠啟動?Google?Chrome?瀏覽器并打開擴(kuò)展頁面,感興趣的可以了解一下
    2024-11-11
  • 查看已安裝tensorflow版本的方法示例

    查看已安裝tensorflow版本的方法示例

    這篇文章主要介紹了查看已安裝tensorflow版本的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python中?whl包、tar.gz包的區(qū)別詳解

    Python中?whl包、tar.gz包的區(qū)別詳解

    whl格式本質(zhì)上是一個壓縮包,里面包含了py文件,以及經(jīng)過編譯的pyd文件,這篇文章主要介紹了Python中?whl包、tar.gz包的區(qū)別,需要的朋友可以參考下
    2022-08-08
  • 運(yùn)用python去除圖片水印

    運(yùn)用python去除圖片水印

    本文介紹了如何運(yùn)用python去除圖片的水印,文中使用圖片以及代碼詳細(xì)的介紹了兩種去除的方法,感興趣的朋友可以自己參考一下
    2021-08-08
  • Python ORM框架SQLAlchemy學(xué)習(xí)筆記之映射類使用實例和Session會話介紹

    Python ORM框架SQLAlchemy學(xué)習(xí)筆記之映射類使用實例和Session會話介紹

    這篇文章主要介紹了Python ORM框架SQLAlchemy學(xué)習(xí)筆記之映射類使用實例和Session會話介紹,需要的朋友可以參考下
    2014-06-06
  • 基于python實現(xiàn)rpc遠(yuǎn)程過程調(diào)用

    基于python實現(xiàn)rpc遠(yuǎn)程過程調(diào)用

    本文主要介紹了基于python實現(xiàn)rpc遠(yuǎn)程過程調(diào)用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06

最新評論

河间市| 洛隆县| 富源县| 汝城县| 嫩江县| 深泽县| 清水县| 武宁县| 广州市| 西和县| 聂拉木县| 宁陕县| 五莲县| 盐源县| 肃宁县| 甘泉县| 库伦旗| 怀集县| 福泉市| 兴安盟| 新田县| 溆浦县| 贺州市| 鞍山市| 怀远县| 民县| 文昌市| 文山县| 祥云县| 灵武市| 晋城| 阿城市| 衡水市| 西贡区| 通江县| 老河口市| 贵南县| 嘉义县| 柳江县| 东乡县| 蒙城县|