首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python爬虫itchat爬取微信好友的个性签名 并利用WordCloud,jieba制作词云

我们先上效果图吧!看这个图也是很符合我的圈子的。搞信用卡,金融都多一些。

引用的库:

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()把图片显示出来,本身并不会保存。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190127G0ZU2900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券