我们先上效果图吧!看这个图也是很符合我的圈子的。搞信用卡,金融都多一些。
引用的库:
import itchat
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator
import numpy as np
import PIL.Image as Image
itchat.login()
friends = itchat.get_friends(update=True)
登陆微信,获取好友信息。
for i in friends:
signature = i['Signature'].strip().replace('span','').replace('class','').replace('emoji','')
rep = re.compile("1f\d+\w*|[/=]")
signature = rep.sub('',signature)
siglist.append(signature)
text = ' '.join(siglist)
遍历好友信息,取出好友的个性签名。千万要记得:
这里是空格:这里是空格:这里是空格:这里是空格:这里是空格:
为什么我要强调,因为我调试了很久,查了很久资料,加上是我第一次学习,开始的时候没有空格,怎么都打印不出正常的效果出来,甚是奇怪。所以在这里强调一下,以便之后的学习查证。
wordlist = jieba.cut(text,cut_all=True)
word_space_split = ' '.join(wordlist)
coloring = np.array(Image.open('E:\\py\\pyqt5\\1.png'))
my_wordcloud = WordCloud(background_color='white',max_words=2000,mask=coloring,max_font_size=60,random_state=42,scale=2,font_path='E:\\py\\pyqt5\\simsun.ttc').generate(word_space_split)
image_colors = ImageColorGenerator(coloring)
plt.imshow(my_wordcloud.recolor(color_func=image_colors))
plt.imshow(my_wordcloud)
plt.axis('off')
plt.savefig("E:/py/pyqt5/temp.jpg",dpi=200)
plt.show()
贴的代码都很杂乱无章的。也就自己能看懂吧。所以说这里只是我的一个几率笔记吧,甚至都不算。
plt.axis('off')这个指的是关掉x y轴的坐标
plt.savefig("E:/py/pyqt5/temp.jpg",dpi=200)保存成一张图片
plt.show()把图片显示出来,本身并不会保存。
领取专属 10元无门槛券
私享最新 技术干货