Python实现的微信好友数据分析功能示例


Posted in Python onJune 21, 2018

本文实例讲述了Python实现的微信好友数据分析功能。分享给大家供大家参考,具体如下:

这里主要利用python对个人微信好友进行分析并把结果输出到一个html文档当中,主要用到的python包为itchatpandaspyecharts

1、安装itchat 微信的python sdk,用来获取个人好友关系。获取的代码 如下:

import itchat
import pandas as pd
from pyecharts import Geo, Bar
itchat.login()
friends = itchat.get_friends(update=True)[0:]
def User2dict(User):
  User_dict = {}
  User_dict["NickName"] = User["NickName"] if User["NickName"] else "NaN"
  User_dict["City"] = User["City"] if User["City"] else "NaN"
  User_dict["Sex"] = User["Sex"] if User["Sex"] else 0
  User_dict["Signature"] = User["Signature"] if User["Signature"] else "NaN"
  User_dict["Province"] = User["Province"] if User["Province"] else "NaN"
  return User_dict
friends_list = [User2dict(i) for i in friends]
data = pd.DataFrame(friends_list)
data.to_csv('wechat_data.csv', index=True)

2、对获取到的数据进行分析。

主要分析了男女比例,以及好友所在城市分布,并且在地图上面展示了微信好友的分布情况。另外其他的数据读者可以自己去分析,这里只是提供一个引导而已。

import pandas as pd
from pyecharts import Geo, Bar
def Cal_mVw(data):
  result = {}
  for i in data:
    if i == 1:
      result["man"] = result.get("man", 0) + 1
    elif i == 2:
      result["woman"] = result.get("woman", 0) + 1
    else:
      result["unknown"] = result.get("nunknown", 0) + 1
  return result
def count_city(data):
  result = {}
  for i in data:
    if data is not "NaN" or data is not "nan":
      result[i] = result.get(i, 0) + 1
  return result
data1 = pd.read_csv('wechat_data.csv', encoding='GBK')
manVSwoman=Cal_mVw(data1["Sex"])
#print(manVSwoman)
bar = Bar("个人微信好友男女比例")
bar.add("男女人数", ["男", "女", "不详"], [139, 75, 1])
bar.render()
city=count_city(data1["City"])
geo = Geo("微信好友分布", "", title_color="#fff", title_pos="center",
width=1200, height=600, background_color='#404a59')
#attr, value = geo.cast(city)
geo.add("", city.keys(), city.values(), visual_range=[0, 30], visual_text_color="#fff", symbol_size=15, is_visualmap=True)
geo.show_config()
geo.render()

男女比例画出来的图如下所示

Python实现的微信好友数据分析功能示例

获取到的好友分布情况如下图所示:

Python实现的微信好友数据分析功能示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python自动化测试之连接几组测试包实例
Sep 28 Python
Python中使用ElementTree解析XML示例
Jun 02 Python
Python数组定义方法
Apr 13 Python
Python实现二分查找与bisect模块详解
Jan 13 Python
Python自定义简单图轴简单实例
Jan 08 Python
好的Python培训机构应该具备哪些条件
May 23 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
Aug 02 Python
pytorch多GPU并行运算的实现
Sep 27 Python
python通过SSH登陆linux并操作的实现
Oct 10 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
Python判断变量是否是None写法代码实例
Oct 09 Python
python 标准库原理与用法详解之os.path篇
Oct 24 Python
python skimage 连通性区域检测方法
Jun 21 #Python
python3实现windows下同名进程监控
Jun 21 #Python
python检测主机的连通性并记录到文件的实例
Jun 21 #Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 #Python
python实现自动发送报警监控邮件
Jun 21 #Python
Python中list查询及所需时间计算操作示例
Jun 21 #Python
python监控文件并且发送告警邮件
Jun 21 #Python
You might like
PHP4.04简明安装
2006/10/09 PHP
mysql 字段类型说明
2007/04/27 PHP
PHP中函数内引用全局变量的方法
2008/10/20 PHP
PHP 中文处理技巧
2010/04/25 PHP
PHP实现自动识别Restful API的返回内容类型
2015/02/07 PHP
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
2016/04/27 PHP
循环 vs 递归浅谈
2013/02/28 Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
2013/05/15 Javascript
jquery Tab效果和动态加载的简单实例
2013/12/11 Javascript
window.onload与$(document).ready()的区别分析
2015/05/30 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
jQuery zclip插件实现跨浏览器复制功能
2015/11/02 Javascript
javaScript知识点总结(必看篇)
2016/06/10 Javascript
最佳的JavaScript错误处理实践
2016/07/16 Javascript
js获取html的span标签的值方法(超简单)
2016/07/26 Javascript
JS遍历ul下的li点击弹出li的索引的实现方法
2016/09/19 Javascript
9个让JavaScript调试更简单的Console命令
2016/11/14 Javascript
Angularjs中ng-repeat的简单实例
2017/08/25 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
2019/04/02 Javascript
微信小程序HTTP接口请求封装代码实例
2019/09/05 Javascript
antd-mobile ListView长列表的数据更新遇到的坑
2020/04/08 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
JS实现鼠标按下拖拽效果
2020/07/23 Javascript
[02:09]EHOME夺得首届辉夜杯冠军—现场颁奖仪式
2015/12/28 DOTA
[45:06]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第二场 11.28
2020/12/02 DOTA
python使用fileinput模块实现逐行读取文件的方法
2015/04/29 Python
qpython3 读取安卓lastpass Cookies
2016/06/19 Python
Python函数中不定长参数的写法
2019/02/13 Python
python安装scipy的方法步骤
2019/06/26 Python
使用 CSS3 中@media 实现网页自适应的示例代码
2020/03/24 HTML / CSS
HTML5+JS实现俄罗斯方块原理及具体步骤
2013/11/29 HTML / CSS
英国第一家领先的在线处方眼镜零售商:Glasses Direct
2018/02/23 全球购物
可以在一个PHP文件里面include另外一个PHP文件两次吗
2015/05/22 面试题
计算机通信工程专业毕业生推荐信
2013/12/24 职场文书
电大毕业自我鉴定
2014/02/03 职场文书