前言
文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
这篇文章中向大家介绍了Python绘制词云的方法,不难看出绘制词云可以说是一个“吃瓜神器”,它可以让我们直观的看到新闻的核心内容。那么对于今天的大新闻,我们就继续用Python绘制词云的“正确姿势”来一起吃瓜吧~
废话不多说,上代码
# 导入依赖模块 import json import requests import jieba import pandas as pd import wordcloud import numpy as np import PIL.Image as image import matplotlib.pyplot as plt from pandas.io.json import json_normalize # 请求头 headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.106 Safari/537.36'} # 评论地址 url="http://comment.api.163.com/api/v1/products/a2869674571f77b5a0867c3d71db5856/threads/FASTLQ7I00038FO9/comments/newList?ibc=newspc&limit=30&showLevelThreshold=72&headLimit=1&tailLimit=2&offset={}" # 循环爬取 df = pandas.DataFrame(None) i = 0 while True: ret = requests.get(url.format(str(i*30)), headers=headers) text = ret.text result = json.loads(text) t = result['comments'].values() s = json_normalize(t) i += 1 if len(s) == 0: print("爬取结束") break else: df = df.append(s) print("第{}页爬取完毕".format(i)) # 评论去重 df=df.drop_duplicates('commentId').reset_index(drop=True) # 评论分词 word = [ y for x in df.content.tolist() for y in list(jieba.cut(x)) ] # 读取词云模板 mask = np.array(image.open("D:/gua.jpg")) # 设置停用词 stopword=[ '一个','这个','不是','就是','没有','什么','这么','这样', '这种','怎么','斜眼','微笑','喷水','大笑','跟帖','br' ] # 设置词云图层属性 wd=wordcloud.WordCloud(font_path='C:/windows/fonts/simhei.ttf', stopwords=stopword, mask=mask, collocations=False) # 创建词云对象 wd=wd.generate(",".join(word)) # 将词云模板的颜色设置为输出词云的颜色 image_colors = wordcloud.ImageColorGenerator(mask) # 从背景图建立颜色方案 wd.recolor(color_func=image_colors) # 绘制词云 plt.imshow(wd) # 隐藏坐标轴 plt.axis('off') # 画图 plt.show()
实现效果图
给位观众,这个瓜可还可口?
如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。获取方式,私信小编 “ 资料 ”,即可免费获取哦!