微信有一個很神奇的功能,你能夠在消息發出去兩分鐘以內撤回消息。說錯話了,你能夠趁別人沒有看到趕忙撤回;消息發錯地方了,能夠立刻撤回以避免尷尬。可是,不知道有沒有像我同樣的強迫症,看到別人撤回了一條消息,就必需要知道他/她到底發了什麼,否則一天都不爽的。若是你也是,那麼恭喜你,看完這個系列文章你就應該有辦法查看那些該死的被撤回的消息。
按照慣例,咱們仍是用Python
來編寫這個腳本。爲了能查看微信被撤回的消息,首先咱們須要一個能登錄微信的庫。Python
有不少這樣的庫,好比ItChat
、wxpy
等,這裏採用我用的最多的ItChat
庫。html
因爲ItChat
是經過模擬登錄網頁版微信實現微信的部分功能,因此你須要有一個可以登錄網頁版微信的微信號。怎麼知道本身的微信能不能登錄呢?複製下面的網址打開,用微信掃碼,若是能登錄那就是能夠的。python
https://wx.qq.com/
經過下面的命令安裝ItChat
:git
pip install itchat
安裝完以後,打開Python
編譯器,若是能導入就是安裝成功:github
import itchat
接下來,咱們來看看這個神奇的庫是如何登錄微信的。實現的方法有不少,咱們看看最簡單的一種:微信
import itchat itchat.auto_login() itchat.run()
包括導入包的代碼,總共3行代碼!ui
運行以後,會輸出以下信息:this
Getting uuid of QR code. Downloading QR code. Please scan the QR code to log in.
同時會出現一個二維碼,程序運行目錄會多出一個QR.png
文件。沒錯,這個二維碼就是程序自動獲取的上面那個網頁版微信的二維碼,因此須要你用微信掃一掃實現登錄。用微信掃描以後,程序會輸出:spa
Please press confirm on your phone.
這時你在手機上點擊確認。確認以後,程序就開始加載你的通信錄,同時輸出一下信息:3d
Loading the contact, this may take a little while. Login successfully as **** Start auto replying.
這時候你就看到你的微信已經成功登錄,多出的QR.png
文件也已經自動刪除。並且已經能夠自動應答,同時你的手機微信最上方也會顯示「網頁微信已登陸」的信息:code
不過,這時若是你重開程序你就須要從新掃碼登錄。這也太麻煩了,ItChat
也想到了這些,爲咱們提供了免除這一麻煩的方式。其實也很簡單,只須要在登錄的方法中加一個參數便可:
itchat.auto_login(hotReload=True)
一樣的方式登錄,咱們會發現程序運行目錄會多出一個itchat.pkl
文件,這個文件中就存儲了咱們的微信登錄信息。
這時候若是重開程序就不須要從新掃碼了。可是若是中間間隔好幾天,由於這時候登錄信息已通過期,也仍是須要掃碼的。
今天簡單的介紹瞭如何搭建開發環境以及如何登錄微信,下一期會詳細介紹怎麼接收信息,怎麼判斷信息被撤回。
無論寫什麼,但願能跟更多人溝通,有問題或者需求隨時歡迎交流。
我全部的項目源碼都會放在下面的github倉庫裏面,有須要能夠參考,有問題歡迎指正,謝謝!
https://github.com/TitusWongCN/
下面是個人公衆號,有興趣能夠掃一下: