Python爬取百度春节祝福语并生成心形词云

闻溪
闻溪
发布时间:2026-10-15| 2人浏览过
原创

本文介绍如何使用Python爬取百度搜索结果中的春节祝福语,并利用selenium和wordcloud库生成心形词云。文章详细列出了Windows环境下Python 3.7所需的依赖包,包括selenium、wordcloud、PIL、numpy和jieba,并提供了从数据抓取到词云生成的完整思路与代码示例。

前言

近期正在学习爬虫技术,因此尝试爬取春节期间的祝福语,并制作成词云进行展示。有兴趣的读者可以跟随步骤尝试,文末将提供完整源代码,实现过程相对简单。最终生成的效果图如下所示:

环境

运行环境为Windows系统。

编程语言为Python,具体版本为3.7。

项目依赖以下第三方库:

selenium:用于网页爬取及收集祝福语。该库常用于UI自动化测试,此处未选用requests库,而是使用selenium,其优势在于爬取过程中页面内容实时可见,便于调试。

wordcloud:用于生成词云图像。

PIL:用于设定词云的特定轮廓形状。注意在Python 3.7环境中安装时应使用命令pip install pillow。

numpy:生成带有轮廓的词云需安装此包,它将形状图片表示为大型矩阵以供处理。

jieba:词云默认生成英文,由于爬取的是中文祝福语,需使用jieba库进行中文分词,以防止出现乱码。

思路

整体流程分为两步:首先爬取百度关于春节祝福语的内容,并将结果保存至文件;随后利用词云库解析该文件生成图像。具体步骤如下:

此处使用selenium的webdriver,指定浏览器为Firefox。创建Firefox浏览器对象后,打开百度首页,定位到搜索输入框,输入关键词“新春祝福2022”,浏览器页面显示效果如图:

在搜索结果页,模拟人工点击第一个搜索结果链接,跳转至目标网页,界面如图:

获取该页面中的所有祝福语文本,并将其保存至wishes.txt文件中。

接着使用词云相关库解析wishes.txt文件以生成词云。需注意,生成词云时需指定中文字体,font_path参数设置为Windows系统字体库路径,用户也可根据需要替换为其他字体。

word_cloud = WordCloud(mask=mask, font_path='C:\Windows\Fonts\STXINGKA.TTF').generate(text)

Windows系统字体库路径示例。

源代码

注意事项:

可以自定义背景颜色和字体颜色,例如配置参数如下:

word_cloud = WordCloud(mask=mask, background_color='white',  contour_color='red', colormap='brg',
                       max_words=600,
                       font_path='C:\Windows\Fonts\STXINGKA.TTF').generate(text)

重新运行代码后,生成的词云效果如图:

关于支持的colormap颜色集,可参考官方文档链接。

至此,关于Python爬取百度春节祝福语并生成心形词云的教程介绍完毕。如需了解更多Python爬取祝福相关内容,建议搜索本站历史文章或继续浏览后续相关文章,感谢大家的支持!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。