大前天我們通過Python網路爬蟲對朋友圈的資料進行了抓取,感興趣的朋友可以點選進行檢視,如何利用Python網路爬蟲抓取微信朋友圈的動態(上)和如何利用Python網路爬蟲爬取微信朋友圈動態——附程式碼(下)。今天小編帶大家通過詞雲去將其進行視覺化,具體的教程如下。
1、在Python中做詞雲,需要用到wordcloud庫和jieba分詞庫,沒有安裝的夥伴可以直接pip安裝即可。
2、之後你可能還需要一些字型,如simhei.ttf等,這些字型在網上都有,可以直接進行下載,在做詞雲的時候會用得到,如下圖所示。
3、在items.py的同級目錄下建立analyse.py檔案,定義analyse_words方法,用於實現詞雲視覺化,jieba.cut用於得到分詞結果,具體的程式碼實現,如下圖所示。因為得到的moment.json資料是以JSON格式儲存的,所以需要在該檔案中匯入JSON模組對其進行解析。
這個地方需要注意一下,由於我們的memoent.json檔案中是中文字元,如果在open()函式中沒有加入encoding=’utf-8’的話會導致gbk編碼錯誤,記得將編碼加上即可。
4、之後執行程式,得到keys.png圖片檔案,程式執行的效果如下圖所示。可以看到keys.png已經在items.py目錄下了。
5、雙擊keys.png,如下圖所示。
6、不得不承認,這個詞雲圖片內容確實豐富,不過也十分的醜。小編利用wordart(一個詞雲網站)將朋友圈資料進行更加美化的視覺化。
7、比方說用動物的圖案進行視覺化,效果圖如下圖所示。
8、如果直接將資料進行匯入的話,wordart會直接將整段話進行視覺化,這樣顯得十分冗餘,看上去也不太友好,因此還需要通過Python對資料進行分頻統計,之後再匯入到wordart中就可以看到想要的效果了。首先,我們需要對json檔案進行處理一下,將文字全部匯出來,形成一個moment.txt檔案。內容如下圖所示。
9、編寫程式碼,將文字進行分詞,程式碼實現如下所示。
10、程式執行完成之後,得到的moment_outputs.txt檔案,內容如下圖所示,可以很清楚的看到分詞情況。紅色部分是程式執行的過程。
11、繼續編寫程式碼,將詞頻進行統計彙總,程式碼實現如下圖所示。
12、程式執行之後,得到一個txt和Excel檔案,裡邊是關於詞頻統計的資訊,如下圖所示。紅色部分是程式執行的結果,並沒有報錯。
13、將這些關鍵字匯入到wordart中進行視覺化,如下圖所示。
14、設定一下圖案、字型、排版、顏色等等,就可以生成絢麗的詞雲圖了,下圖是汪星人詞雲圖。
15、下圖是小云朵詞雲圖,可以給視覺帶來一場饕餮盛宴。
小夥伴們,你們有沒有覺得很神奇呢?喜歡的話歡迎收藏和轉載噢~~