自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我用Python爬取微信好友,最后發(fā)現(xiàn)一個(gè)大秘密

開發(fā) 后端
現(xiàn)在人們?nèi)粘I罨旧想x不開微信,但微信不單單是一個(gè)即時(shí)通訊軟件,微信更像是虛擬的現(xiàn)實(shí)世界。你所處的朋友圈是怎么樣,慢慢你的思想也會(huì)變的怎么樣。最近在學(xué)習(xí) itchat,然后就寫了一個(gè)爬蟲,爬取了我所有的微信好友的數(shù)據(jù)。并對(duì)其中的一些數(shù)據(jù)進(jìn)行分析,發(fā)現(xiàn)了一些很有趣的事。

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

前言

你身處的環(huán)境是什么樣,你就會(huì)成為什么樣的人。現(xiàn)在人們?nèi)粘I罨旧想x不開微信,但微信不單單是一個(gè)即時(shí)通訊軟件,微信更像是虛擬的現(xiàn)實(shí)世界。你所處的朋友圈是怎么樣,慢慢你的思想也會(huì)變的怎么樣。最近在學(xué)習(xí) itchat,然后就寫了一個(gè)爬蟲,爬取了我所有的微信好友的數(shù)據(jù)。并對(duì)其中的一些數(shù)據(jù)進(jìn)行分析,發(fā)現(xiàn)了一些很有趣的事。

微信好友爬蟲

此次的爬蟲程序用到的庫有很多,其中爬取微信數(shù)據(jù)用到的事 itchat。需要你先去下安裝。安裝完成以后,你就可以通過 itchat.login() 這個(gè)函數(shù)登陸你自己的微信。它回彈出一個(gè)網(wǎng)頁登陸的二維碼,你用手機(jī)掃描登陸即可。

然后通過 itchat.get_friends() 這個(gè)函數(shù)就可以獲取到自己好友的相關(guān)信息,這些信息是一個(gè) json 數(shù)據(jù)返回。然后我們就可以根據(jù)這些返回的信息,進(jìn)行正則匹配抓取我們想要的信息,在進(jìn)行分析。

 
  1. import itchatitchat.login()#爬取自己好友相關(guān)信息, 返回一個(gè)json文件friends = itchat.get_friends(update=True)[0:] 

我的微信好友的男女比例

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

觀察返回的數(shù)據(jù),很容易就可以根據(jù)關(guān)鍵字發(fā)現(xiàn)性別是存放在一個(gè)字典里面,它的 key 是「Sex」,男性值為 1,女性為 2,其他是不明性別的(就是沒有填的)。

在代碼里我定義了一個(gè)函數(shù) parse_friends() 通過一個(gè) for 循環(huán),把獲取到的數(shù)據(jù)通過 for 循環(huán)保存到 text 字典里。然后再通過 draw() 函數(shù)畫出柱狀圖。柱狀圖使用的是 plt 庫,之前也寫過一篇文章,感興趣的同學(xué)可以去查看。

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

***打印的結(jié)果:

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

不得不多說我微信的 1K 多的好友男女比列非常的不協(xié)調(diào),男多女少啊。這讓我回想起以前高中一個(gè)班 50 個(gè)人,女生就 7 個(gè),然后我們班的女生從此就有一個(gè)女團(tuán)稱呼「七仙女」。

我的微信好友個(gè)性簽名的自定義詞云圖

為了進(jìn)一步分析我的好友大致都有什么特征,我把好友的個(gè)性簽名一起抓取,分析制作成詞云。

個(gè)性簽名是保存在 Signature 這個(gè) key 中,由于有些簽名包含些表情,最初抓取會(huì)變成 emoji、span、class 等等這些無關(guān)的詞。所有需要先替換掉,另外,還有類似 <>/= 之類的符號(hào),也需要寫個(gè)簡(jiǎn)單的正則替換掉,再把所有拼起來,得到 text 字串。

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

得到的數(shù)據(jù)***保存到當(dāng)前目錄名為「text.txt」文本中。

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

分析好友簽名的函數(shù)我定義成:parse_signature(),完整代碼如下:

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

抓取整理了簽名的數(shù)據(jù),接下來就是制作出詞云。這里使用的是 wordCloud 來進(jìn)行詞云的制作。之前的文章也有介紹過詞云的制作,感興趣的同學(xué)可以查看這篇文章。

詞云的制作我定義了一個(gè):draw_signature() 函數(shù),完整代碼如下

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

運(yùn)行上面的代碼后得到了如下的圖,由于好友數(shù)量比較多,我分別找了兩張圖制作出圖云。

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

努力,奮斗,世界,生活,自己。這些詞在我們 1K 多人的好友中出現(xiàn)的最多。大家都非常的優(yōu)秀,都非常的上進(jìn)。

我用 Python 爬取微信好友,***發(fā)現(xiàn)一個(gè)大秘密

我的簽名:人生必有癡,而有后成?,F(xiàn)在的我癡迷于各種優(yōu)秀的人,每天都在向他們學(xué)習(xí)。希望大家一生當(dāng)中也有癡迷的一面。 

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2022-08-17 11:20:23

Python微信

2021-12-14 15:20:37

Python微信代碼

2018-04-27 11:50:15

Python微信好友微信

2018-05-16 09:10:10

Python爬蟲微信好友

2021-06-30 23:38:56

Python微信好友

2010-04-15 15:23:41

2017-07-17 09:27:09

Python 爬蟲編程

2017-07-12 10:25:17

Python微信itchat 包

2013-07-08 14:42:11

2024-05-06 09:08:52

微軟開源Linux

2018-12-04 15:10:56

Python微信備忘錄

2022-09-30 13:55:46

Python機(jī)器人

2020-05-14 18:25:40

微信移動(dòng)應(yīng)用群聊

2021-04-16 11:27:16

Python表情微信

2022-02-28 00:14:30

人工智能數(shù)據(jù)機(jī)器學(xué)習(xí)

2015-07-27 10:34:55

大數(shù)據(jù)大忽悠

2021-08-01 22:41:07

微信功能技巧

2017-12-27 14:51:12

Kotlin谷歌Java

2017-08-30 12:17:02

Python王者榮耀套路

2018-06-19 08:02:00

統(tǒng)計(jì)程序微信
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)