最近看到網上有人用Python獲取微信的一些信息,感覺挺有意思,對于我一個Python剛入門的人來說,正需要一些代碼片段來激起我的興趣,所以自己也寫了一些,廢話不多說,直接上代碼!!!
coding:utf-8微信好友昵稱WordCloudimport itchatimport reimport osimport matplotlib.pyplot as pltfrom wordcloud import WordCloud, ImageColorGeneratorimport numpy as npimport PIL.Image as Imageimport jiebaimport 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)#wordcloudd = 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 微信之獲取好友昵稱并制作wordcloud的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答