其他
就这么简单!Python爬取脚本之家生成词云
出品 | 脚本之家(ID:jb51net)
在工作生活中,当我们遇到想展示关键词的场合时,用词云的方式展示是一个不错的方法。但是如何去实现词云呢?理论上,通过中文分词技术可以得到高频词列表,通过词云图的方式对排名靠前的高频词进行呈现,将出现频次越高的词语,设置更大的字号。这样的可视化展示方式,不仅直观,而且美观。
那么如何快速生成一个词云呢?
一些在线的词云生成平台可以快速生成词云,但是有时候并不能按照喜好去实现。这个时候使用Python语言可以快速实现编程词云。只需要一段代码,即可按照自己的喜好最合适的词云。
首先,导入需要用到的模块。如果有些模块没有下载,使用pip命令语句提前下载安装即可。
生成词云的所有Python代码如下:
from os import path
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
import jieba
from wordcloud import WordCloud,STOPWORDS
from matplotlib import colors
#设置当前文件路径
d = path.dirname(__file__)
#读取需要分词的文件,这里存储在work.txt里。
file = open(path.join(d, 'work.txt'),encoding='UTF-8').read()
#使用jieba模块进行分词
default_mode =jieba.cut(file)
text = " ".join(default_mode)
#使用图片template.png作为模板
alice_mask = np.array(Image.open(path.join(d, "template.png")))
stopwords = set(STOPWORDS)
stopwords.add("said")
#建立颜色数组,这里选择的红色系
color_list=['#FF0000','#a41a1a']
colormap=colors.ListedColormap(color_list)
wc = WordCloud(
#设置字体,不指定就会出现乱码,这个字体文件需要下载
font_path=r'D:/wqy-microhei/wqy-microhei.ttc',
background_color='white',
max_words=1000,
scale=2,
mask=alice_mask,
colormap=colormap,
stopwords=stopwords)
#生成词云
wc.generate(text)
#保存生成的词云图片result.png到当前文件路径
wc.to_file(path.join(d, "result.png"))
pip install 【模块名】 -i https://pypi.tuna.tsinghua.edu.cn/simple
本文作者:江一
声明:本文为 脚本之家专栏作者 投稿,未经允许请勿转载。
写的不错?赞赏一下
长按扫码赞赏我
●
●