羣發技術-使用python3給微信好友羣發消息

本文介紹如何給我的微信好友羣發消息。python

微信我的號中的羣發助手能夠一次給30個發送消息,若是要給全部全部羣發,則須要本身手動發送屢次,或者藉助程序實現了。本文便是程序實現教程git

 

1、原理github

在微信的官方網站上 https://weixin.qq.com/,提供了一個網頁版的微信,地址爲web

https://wx.qq.com/微信

登陸該網頁版微信後,能夠在網頁上給對方發送消息,經過抓包分析網頁交互,能夠獲得發送消息的接口,而後使用程序調用該接口,就能夠給好友發送消息了。ide

把全部好友都找出來,而後排列依次給他們發送消息,這樣就是羣發。網站

 

2、itchat庫spa

若是咱們須要本身來分析這個接口,也不是不能夠,但須要費時費力。github用戶littlecodersh已經作好了這個工做,它把接口都找出來,封裝成python語言下的itchat庫。咱們直接調用這個庫就能夠了。命令行

 

3、使用方法code

因爲這是一個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'])

這樣就能夠給全部用戶發送這一消息了。

發送效果以下

從中能夠看到,有的人把本身清除掉了,以牙還牙,咱們也把對方從好友刪除掉。

 

4、注意事項

新註冊的微信帳號沒有網頁版登陸權限

羣發的時候,每次發送最好間隔比較長的時間,至少2秒以上。

 

5、羣發代碼下載

關注微信公衆號方倍工做室,在公衆號聊天窗口中,回覆 1347 ,憑積分兌換

相關文章
相關標籤/搜索