利用itchat实现模拟微信网页登录及好友性别分析(小试牛刀)

**前两天在微信公众号(Python中文社区)上了解到一个很有趣的Python的“玩法”**就是通过itchat库来实现微信的一些基本操作

首先,我们要安装itchat库

pip install itchat

然后我们就可以利用三行简单的代码来实现网页的微信登录

import itchat #首先得导入包。。。
itchat.auto_login()   #这里可以将属性设置hotReload=True即‘热启动’
#itchat.auto_login(hotReload=True)是可以将你扫描二维码登录后的状态保存为一个itchat.pkl文件,这样可以让你下次运行时不再扫描二维码即可登录(网上看到有人说是十分钟左右,我也没做验证,所以不太清楚)。
itchat.run()   # 运行并保持在线状态

登录成功后就是这样了,当然后面的好友分析你不会看到,因为你还没对你的好友分析
利用itchat实现模拟微信网页登录及好友性别分析(小试牛刀)
然后我们就可以进行一些有趣的操作啦
你想知道你的微信好友是男的多还是女的多吗?
利用itchat实现模拟微信网页登录及好友性别分析(小试牛刀)

现在我们开启探索之旅。。。
首先我们要将你的好友的性别读取并暂时保存下来,

  1. 这里要说一下微信好友性别返回的值
  2. 男性:1
  3. 女性:2
  4. 不明:0“不明”
import itchat
if __name__ == '__main__':
    itchat.auto_login(hotReload=True)
    #读取朋友的信息,update为更新
    friends=itchat.get_friends(update=True)[0:]
    male=female=other=0
    #这里从friend[1]开始,因为friend[0]是你自己的信息
    for i in friends[1:]:
    #只需要读取好友的sex即可,当然你还可以读取其他的内容进行分析
        sex=i["Sex"]
        if sex==1:
            male+=1
        elif sex==2:
            female+=1
        else:
            other+=1
    total=len(friends)
    print("男性好友:%.2f%%"%(float(male)/total*100)+"\n"
          +"女性朋友: %.2f%%"%(float(female)/total*100)+"\n"+
          "不明性别好友:%.2f%%"%(float(other)/total*100))

这样就能够看到你的好友性别的分布啦,也可以看到城市、年龄等的分布。还可以通过pyecharts库将数据可视化,以便让这些数据更加清晰的显示出来。所以,你知道了吗?