忙忙碌碌的生活,你是否有空去真正了解下你的微信朋友圈嘛?有没有想过,静下来去深入了解以下“圈儿”里的那些形形色色的你我他?Python码简单的代码可以实现“上帝”的奇幻视角。
本文利用Python的itchat、pandas、matplotlib、snownlp、wordcloud等库,模拟网页微信登陆,获取微信好友的微信号、昵称、签名、性别和所属地区等信息,分析微信好友性别分布、地区分布、签名关键字和签名态度倾向等特征,另外利用图灵API接口,尝试测试了一个微信聊天机器人。
(一)地理位置分布
首先从地理位置分布上了解好友的地理状况。对位置信息进行汇总处理,利用柱状图进行展示。
大部分好友都位于上海,其次为湖北;安徽、浙江、福建等省份的好友数量大致相当。
(二)性别分布
注册微信可以选择性别,微信名片也会自带性别标示。通过获取性别数据,发现性别分布状况如下:
仅有少量好友未标明性别信息。好友中男女比例大致相当。
(三)签名的情感状态
微信签名是比较个性化的功能,可以体现个人某段时间感受比较强烈或认同较深的想法,故而可以一定程度上直接反应个人的情感态度。首先提取全部签名,进行分词处理,利用高频词汇制作词云:
利用NLP情感分析功能,对签名情感状态进行分析,结果如下:
数据显示大部分好友都比较积极,中性状态也占比较大。希望所有人圈儿里暂时消极的好友们,生活也都能开心向上。
获取好友中男女情感状态占比,结果如下(数据删除了未设置签名的好友数据):
发现男性大部分为积极态度,其次为中性状态。消极状态占比较小。未表明性别的部分好友,超27%情感状态积极向上,超18%为中性状态。女性部分数据占比较小,与无签名或未成功抓取性别信息有关,数据不具备代表性。
(四)微信聊天机器人
到此,本文的分享结束啦。本文只是尝试性的看看python人工只能相关的库的功能,并利用它发掘一些生活中实际可用的项目。相信python的数据分析、人工智能等作用将在很多很深的领域使工作生活更加便利。
领取专属 10元无门槛券
私享最新 技术干货