我是什么人,Python告诉你!

断断续续地学Python有几个月了,掌握了基本语法,期待一些实战练习,希望将学的Python应用起来,做一些有意思的事情。

于是就有了这个系列,《用Python做一些有意思的事情》,今天是本系列的第一篇,用Python爬取自己的微信朋友。

常言道,欲知其人,先观其友。一个人的社交范围,往往就能体现出他的品性。通过观察一个人朋友的素质,就可以判断出一个人的品德和修养。

你身处什么样的环境,你就会成为什么样的人。

现在人们日常生活基本上离不开微信,但微信不单单是一个即时通讯软件,微信更像是虚拟的现实世界。你所处的朋友圈是怎么样,慢慢你的思想也会变的怎么样。

于是我就拿自己的微信做实验,爬取了自己的微信好友的基本信息,并做了个简单的统计分析。我是什么人,Python告诉你!

一、微信好友性别比例

整体思路:

1、使用Python里的itchat包,调用itchat包中的登陆接口登陆自己的微信,过程中会生产一个登陆二维码,扫码之后即可登陆。

2、登陆成功后,把自己好友的相关信息爬下来

3、遍历好友信息,提取其中的性别信息并各自计数

4、使用Python里的matplotlib包,对统计结果进行数据分析,画出柱状图,结果如下图所示:

数据分析:

这还用分析什么?男多女少,男女比例极不协调,典型的理工科男生的朋友圈,单身这么多年不是没有道理的

二、微信好友个性签名

整体思路:

1、使用Python里的itchat包,调用itchat包中的登陆接口登陆自己的微信,过程中会生产一个登陆二维码,扫码之后即可登陆。

2、登陆成功后,把自己好友的相关信息爬下来

3、遍历好友信息,提取其中的个性签名并保存下来,保存为文本文件

4、使用简单的正则表达式过滤文本,将文本中的emoji和特殊符号等过滤掉,只保留有意义的关键信息

5、引入Python的结巴分词这个包(jieba)来进行分词,将个性签名的一句话分割成多个关键词词组

6、引入Python的词云这个包(wordcloud)来进行画图,将出现频率高的关键词以词云的方式展现出来,结果如下图所示

数据分析:

出现得比较多的关键词:知行合一、优秀、武汉、小时候,这些和我也还是比较相符合的吧,我最近确实打算看知行合一王阳明,在书架上摆了好几个月了,这位微信个性签名是知行合一的朋友,欢迎来交流指导啊哈哈哈哈

以上是不是很有趣呢?是不是又打开了一扇新世界的大门呢?

我微信好友也不是太多,如果微信好友有几千个,可以得到几千条数据,分析一下还是很有价值的。

Python的包实现确实丰富,不需要关注底层的具体实现,只需要研究如何用好Python提供的各种包,用Python的这些包来做上层的应用,来做一些有意思的事情。

请持续关注我吧,后面还会用Python做更多更好玩的事情哦!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180801G1ULVW00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券