python如何爬取微信好友信息?(下)

Python3爬虫代码怎么抓取微信好友基本信息,并且进行数据清洗,上篇已经将教程的上半部分进行了分解,下面我们继续来解决这个问题,将接下来的两个步骤完成。

4、利用签名绘制词云
#4、绘制词云
#4.1 替换签名中的emoji、span、class、类似<>/= 之类的符号等等
siglist = []
for i in friends:
signature = i["Signature"].strip().replace("span","").replace("class","").replace("emoji","")
rep = re.compile("1fd+w*|[<>/=]")
signature = rep.sub("", signature)
siglist.append(signature)
text = "".join(siglist)

#4.2 把结巴分词这个包搞进来分词
import jieba
wordlist = jieba.cut(text, cut_all=True)
word_space_split = " ".join(wordlist)
#4.3 进入画图阶段,根据自己想要的图片、形状、颜色画出相似的图形
import matplotlib.pyplot as plt
from wordcloud import WordCloud, ImageColorGenerator
import numpy as np
import PIL.Image as Image
coloring = np.array(Image.open("101.jpg"))
my_wordcloud = WordCloud(background_color="white", max_words=2000,
mask=coloring, max_font_size=60, random_state=42, scale=2,
font_path="STXINWEI.TTF").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.show()

5、ggplot图形展示
#5、ggplot图形展示
import matplotlib.pyplot as plt
#获取csv内容
df = pd.read_csv('data.csv')
#配置图
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.hist(df['Sex'], bins=7)
#标题
plt.title('Sex distribution')
#X轴标题
plt.xlabel('Sex')
#Y轴标题plt.ylabel('people')
plt.show()


以上当这些步骤执行完之后,我们就能够将微信好友的基本信息抓取完毕了。