給“微信群”發送消息
顯然,靠快速打字是不現實的,用程序來實現才靠譜。
本文介紹如何用程序發送消息到微信群。
參考網頁微信的功能,很自然的一個想法就是調用網頁微信的接口來實現這個功能。
那麽,有沒有現成的項目已經實現了對微信接口的封裝了呢?
itchat,這是一個開源的python項目,封裝了微信接口。通過它,可以實現收發消息、分析好友數據等等有興趣的事情。
所以,小程就用它來實現消息的發送。
(1)itchat的安裝
itchat在github的地址是這個:<https://github.com/littlecodersh/ItChat/tree/robot>
讀者感興趣的話,可以clone下來研究一下:
git clone https://github.com/littlecodersh/ItChat.git
它的目錄結構大概是這樣的:
但小程是沖著“使用”而來的,所以,只要安裝好就行。
安裝itchat:
sudo pip install itchat
(2)實現發送消息到群
itchat,使用了網頁微信的接口,在做所有事之前,先要登陸微信:
itchat.auto_login(hotReload=True)
hotRelad參數寫為True,表示使用熱登陸,在一定的時間內不需要重新掃碼登陸。
rooms = itchat.get_chatrooms(update=True)
rooms = itchat.search_chatrooms(gname)
第一句是拿到所有微信群,第二句是搜索指定名稱的微信群(模糊搜索),這兩個函數都返回微信群列表。
微信群的列表,大概是這樣的:
列表中的每一個元素都是一個Chatroom(一個字典),而每一個Chatroom都有一個UserName,可以給這個UserName發送消息。
itchat.send(msg, toUserName=username)
這個是發送消息的函數,msg為文本消息,toUserName表示往哪裏發送,如果不指定就是發給自己(filehelper)。
小程給出大概的代碼,裏面有兩個函數,一個是發消息到特定的微信群,一個是發消息到所有的微信群。程序運行的效果也通過了小程的測試。
如果要做到“刷屏”,只需要循環發送消息即可。
總結一下,本文主要是itchat項目的調用,使用它提供的幾個函數,實現在電腦上發送消息到微信群的功能。操作簡單,難度為低。
給“微信群”發送消息