本文介紹如何給個人微信好友群發消息。
微信個人號中的群發助手可以一次給30個發送消息,如果要給所有所有群發,則需要自己手動發送多次,或者借助程序實現了。本文即是程序實現教程
一、原理
在微信的官方網站上 https://weixin.qq.com/,提供了一個網頁版的微信,地址為
https://wx.qq.com/
登錄該網頁版微信后,可以在網頁上給對方發送消息,通過抓包分析網頁交互,可以得到發送消息的接口,然后使用程序調用該接口,就可以給好友發送消息了。
把所有好友都找出來,然后排列依次給他們發送消息,這樣就是群發。
二、itchat庫
如果我們需要自己來分析這個接口,也不是不可以,但需要費時費力。github用戶littlecodersh已經做好了這個工作,它把接口都找出來,封裝成python語言下的itchat庫。我們直接調用這個庫就可以了。
三、使用方法
由於這是一個python下的庫,我們需要安裝python。下載安裝很簡單,百度上就可以找到很多方法,這里就不多說了。
安裝好后,需要安裝該庫。
使用命令
pip install itchat
安裝好之后,在程序中引用該庫
import itchat
調用登錄接口
itchat.auto_login(hotReload=True)
程序會在命令行返回信息


並返回一個二維碼用於掃碼登錄


掃描之后,提示登錄成功,顯示自己的微信昵稱


然后拉取好友列表
使用命令
friends = itchat.get_friends()
拉取到的好友列表如下所示

第一個是自己
好友的數據格式是這樣子的
{ "MemberList":<ContactList: []>, "Uin":0, "UserName":"@80d139ab364336b3eec88bab24ef227b37b60eadd7f25a0a3501bb56f13f51c3", "NickName":"白加黑", "HeadImgUrl":"/cgi-bin/mmwebwx-bin/webwxgeticon?seq=620814557&username=@80d139ab364336b3eec88bab24ef227b37b60eadd7f25a0a3501bb56f13f51c3&skey=@crypt_369d833a_713bf12e3cf985301ee19ce3c14b8316", "ContactFlag":3, "MemberCount":0, "RemarkName":"", "HideInputBarFlag":0, "Sex":2, "Signature":"情人節快樂。", "VerifyFlag":0, "OwnerUin":0, "PYInitial":"BJH", "PYQuanPin":"baijiahei", "RemarkPYInitial":"", "RemarkPYQuanPin":"", "StarFriend":0, "AppAccountFlag":0, "Statues":0, "AttrStatus":4161, "Province":"北京", "City":"海淀", "Alias":"", "SnsFlag":17, "UniFriend":0, "DisplayName":"", "ChatRoomId":0, "KeyWord":"", "EncryChatRoomId":"", "IsOwner":0 }
其中的UserName字段,就代表用戶的唯一標識,給這個標識發信息,對方就能收到。
然后循環遍歷好好列表,並調用接口給好友發送信息
代碼如下
itchat.send("情人節快樂", toUserName=friends[i]['UserName'])
這樣就可以給所有用戶發送這一消息了。
發送效果如下

從中可以看到,有的人把自己清除掉了,以牙還牙,我們也把對方從好友刪除掉。
四、注意事項
新注冊的微信賬號沒有網頁版登錄權限
群發的時候,每次發送最好間隔比較長的時間,至少2秒以上。
五、群發代碼下載
關注微信公眾號方倍工作室,在公眾號聊天窗口中,回復 1347 ,憑積分兌換
