python生成词云教程(附带QQ聊天记录生成词云实战)

简介: python生成词云教程(附带QQ聊天记录生成词云实战)

很多同学对词云很感兴趣,就是给一段文本,然后根据它的词频,生成出好看的词云,就像下面这张图一样:

image.png

生成这个其实很简单,python代码我已经放在github上面了,大家下载下来就能直接用:

https://github.com/godweiyang/wordcloud

下面我讲讲怎么使用这个代码。

环境配置


首先需要python3环境,推荐使用Anaconda安装。

然后需要 jiebawordcloud库,所以运行下面两条命令安装两个库: pip3 install jiebapip3 install wordcloud

文件目录

这个代码文件夹是如下结构:

  • data
  • templates 这个文件夹下放所有你词云想要的样式图片,背景色最好简单一点。
  • stopwords.txt 这是停止词文件,对于你不想在词云中出现的词,你都可以添加到这个文件中过滤掉它。
  • fonts 这个文件夹下放词云中显示的字体。
  • create_word_cloud.py 这是词云的主代码。
  • preprocess.py 这是用来预处理QQ聊天记录的。

使用方法


对于一般的文本文件,直接运行 python3 create_word_cloud.py filename.txt就能生成词云了,效果如下:

image.png

生成QQ聊天记录词云


首先打开消息记录,点击下方的消息管理器:

image.png

然后在需要导出的聊天对象上面右键点击导出消息记录:

image.png

然后保存类型选择 txt,点保存,并将文件保存在 wordcloud根目录下:

image.png

然后打开命令行运行 python3 preprocess.py filename.txt,用来去掉聊天记录中的昵称和时间等信息:


最后运行 python3 create_word_cloud.py __filename.txt就能生成词云了。


相关文章
|
4天前
|
机器学习/深度学习 算法 搜索推荐
从理论到实践,Python算法复杂度分析一站式教程,助你轻松驾驭大数据挑战!
【10月更文挑战第4天】在大数据时代,算法效率至关重要。本文从理论入手,介绍时间复杂度和空间复杂度两个核心概念,并通过冒泡排序和快速排序的Python实现详细分析其复杂度。冒泡排序的时间复杂度为O(n^2),空间复杂度为O(1);快速排序平均时间复杂度为O(n log n),空间复杂度为O(log n)。文章还介绍了算法选择、分而治之及空间换时间等优化策略,帮助你在大数据挑战中游刃有余。
19 4
|
5天前
|
数据采集 JSON 算法
Python爬虫——基于JWT的模拟登录爬取实战
Python爬虫——基于JWT的模拟登录爬取实战
21 1
Python爬虫——基于JWT的模拟登录爬取实战
|
6天前
|
数据采集 数据可视化 数据挖掘
基于Python的数据分析与可视化实战
本文将引导读者通过Python进行数据分析和可视化,从基础的数据操作到高级的数据可视化技巧。我们将使用Pandas库处理数据,并利用Matplotlib和Seaborn库创建直观的图表。文章不仅提供代码示例,还将解释每个步骤的重要性和目的,帮助读者理解背后的逻辑。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供有价值的见解和技能。
21 0
|
4天前
|
存储 人工智能 Java
Python编程入门:从基础到实战
【10月更文挑战第4天】本文旨在为初学者提供一个全面而深入的Python编程学习路径。我们将从Python的基本语法和概念开始,然后逐步深入到更复杂的主题,如数据结构、面向对象编程和异常处理等。最后,我们将通过一些实际的项目案例,帮助读者将理论知识应用到实践中去。无论你是编程新手,还是有一定经验的开发者,都可以在这篇文章中找到适合自己的学习内容。让我们一起开启Python编程的学习之旅吧!
|
6天前
|
人工智能 数据挖掘 Serverless
探索Python编程:从基础到实战
【10月更文挑战第2天】本文将带你走进Python的世界,了解它的基本语法、数据结构、函数等核心概念,并通过实例演示如何应用这些知识解决实际问题。无论你是编程新手还是有一定经验的开发者,都能在这篇文章中找到有价值的内容。让我们一起开启Python编程之旅吧!
|
4天前
|
数据挖掘 程序员 调度
探索Python的并发编程:线程与进程的实战应用
【10月更文挑战第4天】 本文深入探讨了Python中实现并发编程的两种主要方式——线程和进程,通过对比分析它们的特点、适用场景以及在实际编程中的应用,为读者提供清晰的指导。同时,文章还介绍了一些高级并发模型如协程,并给出了性能优化的建议。
14 3
|
6天前
|
Linux 开发者 iOS开发
Python系统调用实战:如何在不同操作系统间游刃有余🐟
【10月更文挑战第2天】Python 以其卓越的跨平台能力和丰富的标准库,成为解决多操作系统环境下编程挑战的理想选择。本文将通过实际例子展示 Python 如何简化跨平台开发。从文件系统操作到系统调用,再到 GUI 应用开发,Python 提供了多种工具和模块,如 `os`、`pathlib` 和 `subprocess`,帮助开发者轻松应对不同平台间的差异,让你成为真正的跨平台高手。
14 5
|
3天前
|
数据采集 程序员 开发者
Python编程入门:从基础到实战
【10月更文挑战第5天】本文旨在为初学者提供一条清晰的Python学习路径,涵盖基础知识、关键概念、实战项目以及常见问题解答。我们将通过简单易懂的语言和实际代码示例,帮助读者快速掌握Python编程技能。无论你是零基础的新手还是有一定经验的开发者,都能在这篇文章中找到有价值的信息。让我们一起开启Python编程之旅吧!
|
5天前
|
前端开发 JavaScript API
JavaScript逆向爬取实战——使用Python实现列表页内容爬取(二)
JavaScript逆向爬取实战——使用Python实现列表页内容爬取(二)
12 2
|
5天前
|
数据采集 前端开发 NoSQL
Python编程异步爬虫实战案例
Python编程异步爬虫实战案例
15 2