基于微信好友用户的男女比例,区域排名,签名情感分析

wechat

微信好友男女比例,区域排名,签名情感分析

程序

备注

技术栈

微信好友性别占比

采集微信好友性别比例并绘制饼图

itchat, matplotlib

微信好友头像

采集微信好友头像并拼接大图

itchat, math, PIL

微信好友地区分布

采集微信好友区域分布并分别制作省会和城市Top10柱形图

itchat, matplotlib

微信好友个性签名情感分析

采集微信性别比例并绘制饼图

itchat, matplotlib, jieba, numpy, snownlp, wordcloud

微信群好友统计

采集微信群好友信息

itchat, matplotlib, PIL

1、微信登录
importitchatitchat.auto_login(hotReload=True)itchat.dump_login_status()we_friend=itchat.get_friends(update=True)[:]

返回的结果we_friend是微信好友的基本信息列表, 单个好友字典的 key 如下表:

key

备注

UserName

微信系统内的用户编码标识

NickName

好友昵称

Sex

性别

Province

省份

City

城市

HeadImgUrl

微信系统内的头像URL

RemarkName

好友的备注名

Signature

个性签名

2、微信好友性别占比

通过统计好友人数、男生女生各多少人算出好友性别占比,再绘制饼图。

3、微信好友头像
  • 首先需要把好友头像保存在同一目录

  • 设定最后拼图的大小,以及每行需要拼接几个头像,这里我采用图片的面积除以图片的张数

each_size=int(math.sqrt(float(640*640)/len(ls)))# 算出每张图片的大小多少合适lines=int(640/each_size)image=Image.new('RGBA',(640,640))# 创建640*640px的大图
4、微信好友地区分布
  • 由于地区太多,故使用Python sorted函数进行排序,对地区和城市Top10进行柱状图展示

通过区域和城市人数排名,其实大致看出你的户籍所在地和工作地点了。

5、微信好友个性签名情感分析

这里主要做了两部分

  • 第一部分使用jieba分词对好友个性签名进行切词,并制作词云图,这里的词云图背景使用比较火的小猪佩奇

  • 第二部分使用snownlp对好友的签名做一个简单的情感分析

通过饼图来推测我的好友大多数正向情感要高于负向情感。

6、微信群好友统计

之前加了一个中产互助社群,群成员既有一线京沪广深、二线杭宁苏夏,成渝武郑,也有四五七八线地级市县以及国外的朋友,群里刚好讨论了一个话题《三到五年后离开北上广的有多少打算的》,借此机会统计下目前有多少在一线工作,3年后会再次统计一波

群聊用户列表的获取方法为update_chatroom

  • 同样,如果想要更新该群聊的其他信息也可以用该方法

  • 群聊在首次获取中不会获取群聊的用户列表,所以需要调用该命令才能获取群聊的成员

  • 该方法需要传入群聊的UserName,返回特定群聊的详细信息

  • 同样也可以传入UserName组成的列表,那么相应的也会返回指定用户的最新信息组成的列表

importitchatmemberList=itchat.update_chatroom('@@abcdefg1234567',detailedMember=True)

性别比例这里就不再提,群内好友人数分布从图片中可以清晰看到Top3是北京、上海、深圳,的确如此。对于普通人来说,大城市发展的机会、空间、市场、机遇、机会都会比小城市大的多。

完整代码:https://download.csdn.net/download/qq_38735017/87410009

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员奇奇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值