美文网首页
真小白|一步步教你用Python抓取微信好友分析

真小白|一步步教你用Python抓取微信好友分析

作者: 私域大嘴华 | 来源:发表于2018-12-22 12:09 被阅读0次

    前言

    前段时间公司里有个同事发了张图片在群上,是他所有微信好友头像拼成的一张大图,我看着挺有意思,就想自己也搞一下,然后百度了下怎么抓取微信好友之类的……一搜全是用Python抓取的,之前就听说过Python爬虫,但是没怎么接触过Python,算是小白(真小白)。不过我不慌,好歹自己是计算机专业(而且现在做的是Java开发),语言的原理应该是想通的,所以就大概看了下Python的介绍和基础语法,然后又自己捣鼓了下用Python写个helloWord,嗯,感觉很简单呀!但是要我自己一步步去弄?不存在的

    搜了很多篇文章怎么抓取微信好友分析之类的,感觉没有一点Python基础还真地看不懂,自己又是一个嫌麻烦的人,最终Google了一篇比较适合小白用户操作的文章,下面会讲到。但是对于真小白(完全不懂Python的人来说还是有点难的),因为对于我们这种门外汉来说,我只是想操作软件那样简单操作几下就能得到我想要的结果而已,我不想浪费时间去了解什么Python什么安装环境什么原理,巴拉巴拉……所以就有了这篇博客,废话少说,下面进入正题

    注:本篇博客不讲原理(因为我也不懂,哈哈),只讲实现过程,原理请移步下方的参考

    正文

    效果

    欲练神功,必……看效果
    1:统计好友的性别


    Python结果数据分析-性别统计.png

    看起来男女比例差不多啊

    2:统计好友的地域分布,并且可视化在地图上展示


    Python结果数据分析-地区分析.png

    广东人最多,我系广东人

    3:将好友的昵称做成词云

    因为这个信息比较私人,这里就不展示。跟下面好友签名的词云分析显示效果差不多,用的一样技术

    4:统计好友个性签名中的高频词汇


    Python结果数据分析-签名词云.png

    中间最大的几个英文,class、span、emoji应该是一些特殊字符或表情显示不出来。出现比较多的词,比如努力、生活、自己、人生,出现次数越多字越大

    5:将所有好友的头像合并成一张大图

    本人没有获取好友的同意,头像算隐私了吧?所以打了马赛克(谁还没有一点小秘密呢?)

    Python结果数据分析-图片合成.png

    啊,我的眼睛……

    安装Python环境

    1、打开Python官网,下载最新版Python3.7.1安装,如下图。

    懒得去官网的点这里直接下载链接

    Python安装1.png
    2、 下载完之后双击python-3.7.1.exe,勾选Add python.exe to Path(是把Python的安装路径添加到系统环境变量的Path变量中,很重要。大神可忽略,小白必选),点击Install Now(默认安装到C盘,可以自己选择安装目录,由于我的C盘是固体250G,所以就默认安装),如下图
    Python安装2.png
    3、安装完之后检查下,点击开始,输入cmd(或者win+R快捷键)打开命令行窗口,输入python,出现下图就说明安装成功。此时输入exit()可以离开python编译器。
    Python安装3.png

    安装依赖

    在cmd窗口下运行

    • pip3 install pillow

    然后就开始安装,等到安装完成之后才可再次输入命令(耐心等,这一过程不要乱动,小白双手可离开键盘),如下图


    Python安装相关插件.png

    类似的依次运行下面命令

    • pip3 install pyecharts
    • pip3 install itchat
    • pip3 install jieba
    • pip3 install echarts-china-provinces-pypkg
    • pip3 install echarts-countries-pypkg

    下载源码

    懂github的

    真小白

    下载之后放到一个地方,然后解压,如下图


    Python安装源码.png

    运行

    准备好所有东西之后就可以正式开始抓取微信好友信息了

    获取用户信息

    1、需要将get_user_info.py第70行的二胖,改成自己的名字(这里我改成自己的微信昵称:鲜花)。

    用什么软件打开修改?我用的是notepad++(百度下载就行),或者直接用文本text软件notepad.exe打开也行,不过格式不好看

    Python运行源码1.png

    2、定位到源码根目录下,cd /d F:\Projects\python\wechat_friends-master(替换成你自己的)或者在源码根目录下按住Shift+鼠标右键,选择在此处打开命令窗口,如下图

    Python运行源码2.png

    3、输入python get_user_info.py,(如果安装了多个python环境的输入python3 get_user_info.py), 执行后会弹出微信网页版登录的二维码,用手机微信扫一扫并且同意登录即可(如果图片没弹出来,在源码根目录下找到QR.png,手动点击打开),如下图:

    Python运行2.png Python运行源码3.png

    命令执行后,等待,出现下图说明已登录成功并获取到了好友的信息


    Python运行源码4.png

    python get_user_info.py执行后

    • 会在data目录下生成friends.json (存放抓取到的好友信息,比如昵称、头像链接、个性签名等)
    • 会在images目录下存放所有好友的头像
      如下图


      Python运行结果文件-好友信息.png
      Python运行结果文件-图片.png

    到此,我们的好友数据拿到了,下面就是对数据进行可视化分析

    数据可视化分析

    在cmd命令窗口中按住Win+C键结束命令,输入python analyse.py,(如果安装了多个python环境的输入python3 analyse.py),数据处理过程需要点时间(等待吧),如下图

    Python运行源码5.png
    当出现如下图时说明处理完成了
    Python运行源码6.png

    python analyse.py 执行后会在analyse文件夹下生产合成后的图片以及可视化的文件,如下图


    Python运行结果文件-数据分析.png

    至此,大功告成,去看看我们自己的好友分析吧,点开html文件即可用浏览器访问

    总结

    周六早上捣鼓了下这个微信好友分析,顺便写了一篇博客,感想如下

    • 完事开头难,你去做了其实也就那样
    • 写详细的博客真心累(小白笑了,大神呵呵)
    • 感谢二胖(本篇微信好友分析源码的原作者,想详细了解的移步下方的参考

    参考

    分享一段代码-微信好友分析


    更多精彩文章请关注

    相关文章

      网友评论

          本文标题:真小白|一步步教你用Python抓取微信好友分析

          本文链接:https://www.haomeiwen.com/subject/dthikqtx.html