您好,登錄后才能下訂單哦!
小編給大家分享一下Python如何獲取微信好友昵稱并制作wordcloud,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
最近看到網上有人用Python獲取微信的一些信息,感覺挺有意思,對于我一個Python剛入門的人來說,正需要一些代碼片段來激起我的興趣,所以自己也寫了一些,廢話不多說,直接上代碼!!!
coding:utf-8 微信好友昵稱WordCloud import itchat import re import os import matplotlib.pyplot as plt from wordcloud import WordCloud, ImageColorGenerator import numpy as np import PIL.Image as Image import jieba import time #以上是我用到的一些庫,這些根據個人不同需要安裝某些庫 #運行到此處會自動生成一個二維碼,打開手機微信,掃一掃即可登錄 itchat.login() friends = itchat.get_friends(update=True)[0:] tList = [] for i in friends: #用正則表達式過濾掉 span ,class,emoji。NickName表示微信好友的昵稱; signature = i["NickName"].strip().replace("span","").replace("class","").replace("emoji","") rep = re.compile("1f\d.+") signature = rep.sub("",signature) print signature tList.append(signature) #拼接字符串 text = "".join(tList) #jieba分詞 wordlist_jieba = jieba.cut(text,cut_all=True) wl_space_split = " ".join(wordlist_jieba) #wordcloud d = os.path.dirname(__file__) alice_coloring = np.array(Image.open(os.path.join(d,"hot.png"))) #設置一個背景圖片,文章中會附上 my_wordcloud = WordCloud(background_color="white",max_words=2000,mask=alice_coloring,max_font_size=37, random_state=42, font_path="./handan.ttf").generate(wl_space_split) #此處使用的字體一定是支持中文的字體,當然,如果你確定你好友的昵稱都是英文,那么請忽略,字體的路徑可以是相對路徑,也可以是你的系統字體 image_colors = ImageColorGenerator(alice_coloring) plt.imshow(my_wordcloud.recolor(color_func=image_colors)) plt.imshow(my_wordcloud) plt.axis("off") plt.show() time.sleep(3) plt.close() #圖片關閉后將圖片發送至手機,保存圖片,并發送至手機 my_wordcloud.to_file(os.path.join(d, "wechat_cloud.png")) itchat.send_image("wechat_cloud.png", 'filehelper')
至此,打開你的手機,進入到文件傳輸助手,你會收到一張圖片,這就是使用微信好友昵稱制作的詞云,例如:
Python是一種跨平臺的、具有解釋性、編譯性、互動性和面向對象的腳本語言,其最初的設計是用于編寫自動化腳本,隨著版本的不斷更新和新功能的添加,常用于用于開發獨立的項目和大型項目。
以上是“Python如何獲取微信好友昵稱并制作wordcloud”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。