回看18年,最有成就的就是有了本身的 博客網站,堅持記錄,寫文章,累計寫了36篇了,從一開始的難如下手,到如今成爲一種習慣,雖然每次寫都會一字一句斟酌,可是每次看到產出,心裏仍是開心的,享受這樣的過程。python
這篇文章就是用python 生成本身寫的博客詞雲,日常寫的博客都是markdown 格式的,直接把文件傳到後臺,前端用js去解析文件顯示的,因此我這裏處理數據就不須要去爬蟲網站,直接讀文件處理的。android
關於生成詞雲圖的,在另外兩篇文章中也有介紹過:
python itchat 爬取微信好友信息,生成詞雲
python爬蟲學習:爬蟲QQ說說並生成詞雲圖bash
markdown文件處理,遍歷文件夾,匹配md 後綴的文件,讀文件,這裏的root
是文件夾的絕對路徑。微信
import os
total = ""
file_list = os.listdir(root)
for file in file_list:
//處理md文件
if os.path.splitext(file)[1] == ".md":
path = os.path.join(root,file)
text = open(path, encoding='utf-8').read()
//最終獲得的字符串
total = total + "\n" + text
複製代碼
獲得全部的文本以後,使用結巴分詞 pip3 install jieba
,處理成單個的詞語。markdown
import jieba
wordlist = jieba.cut(total, cut_all=True)
wl = " ".join(wordlist)
複製代碼
由於日常寫的文章裏有不少的代碼,這裏能夠正則只留下中文,而後再處理中文字符。python爬蟲
import re
rec = re.compile("[^\u4E00-\u9FA5]")
total = rec.sub("", total)
wordlist = jieba.cut(total, cut_all=True)
wl = " ".join(wordlist)
複製代碼
最後就是生成詞雲,採用WordCloud
的庫dom
wc = WordCloud(
# 設置背景顏色
background_color="white",
# 設置最大顯示的詞雲數
max_words=1000,
# 這種字體都在電腦字體中,window在C:\Windows\Fonts\下,mac下的是/System/Library/Fonts/PingFang.ttc 字體
font_path='C:\\Windows\\Fonts\\STFANGSO.ttf',
height=2000,
width=2000,
# 設置字體最大值
max_font_size=250,
# 設置有多少種隨機生成狀態,即有多少種配色方案
random_state=30,
)
myword = wc.generate(wl) # 生成詞雲
# 展現詞雲圖
plt.imshow(myword)
plt.axis("off")
wc.to_file('blog.png') # 保存圖片
plt.ion()
plt.pause(5)
plt.close() # 圖片顯示5s,以後關閉
複製代碼
最終的結果顯示圖,除去代碼以後,看這些詞,很多仍是跟android相關的,也是日常常常會提到的詞彙。學習
歡迎關注個人我的博客:www.manjiexiang.cn/字體
更多精彩歡迎關注微信號:春風十里不如認識你
一塊兒學習,一塊兒進步,歡迎上車,有問題隨時聯繫,一塊兒解決!!!