微信作为一个老少咸宜的聊天工具,它是我们生活中真实朋友圈的网络数据版本,而我们可曾想过将微信的数据进行整理归纳统计,从而发现自己朋友圈的秘密和交友习惯、生活方式的蛛丝马迹?微信上的昵称、签名、地区由文字来表达,它们在python中就被利用为文本数据,通过对这些文本数据进行挖掘分析,我们就能清晰地发现一些有趣的秘密……如果你也对隐藏在文本和符号之下的讯息感兴趣,对你自己的交友圈想要一探究竟,那么就一起来看看下面的操作吧!
首先介绍一下我们我们所利用的工具:itchat,itchat是一个开源的微信个人号接口,使用它我们可以方便迅速地访问我们个人微信号里的信息。
想要使用itchat库,我们先进行安装和引用:
pip install itchat
import itchat
之后我们登录自己的微信:
itchat.auto_login
执行后,会在当前目录下生成一个二维码图片文件并自动弹出,这时可以用手机微信扫描二维码,手机确认后即可登陆至电脑,终端会提示登陆成功,登陆成功后生成的二维码也会自动消失。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:701698587
然而我在实验的过程中,却遇到了如下情况:
我重复、重启、换电脑,怎么折腾都还是登录失败,在网上浏览了很多帖子,发现有不少人跟我一样遇到因为“账户安全”而无法登陆的问题,可是有的微信号就没有这种问题,似乎本质上是我的微信无法登陆网页版的问题,跟python无关,各方也没有什么好的解决办法,无奈之下我只得自认倒霉,借用了别的好友的微信来操作。
(假如)登陆成功后,为了制造乐趣,我们首先尝试一下用代码发微信消息,:
#输入ta的备注
users = itchat.search_friends("郑晓玥")
userName = users[0]['UserName']
print(userName)
#打印确认无误后,输入信息
itchat.send(msg="嘎嘎嘎,在吗", toUserName=userName)
我们还可以给自己发消息:
itchat.send(msg="我是猪 ")
简单的操作,但是经本人亲试证明乐趣无穷。
好了,接下来进入正经的统计环节,首先为了有个宏观的概览,我们可以试着提取所有好友的所有信息(昵称、签名、地理位置等),并将它存放在Excel文件里,操作代码如下:
# Write information.
table.write(0, 5, u’)
table.write(0, 7, u')
table.write(0, 0, u'【昵称】')
table.write(0, 1, u'【备注名】')
table.write(0, 2, u'【省份】')
table.write(0, 3, u'【城市】')
table.write(0, 4, u'【签名】')
# Loop writing.