Python 安装 wordcloud 模块出现 VC++ 14 错误

有时候很多模块在 PyCharm 里边安装都会出现错误,今天这个 WordCloud 就死活在 PyCharm 里边安装不上。然后试了一下用 pip install wordcloud 也是报错。看了下错误信息: error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools 。 这是因为 wordcloud 模块编译安装的时候需要依赖C/C++编译环境,如果电脑没有编译环境的话就会报错。那么解决方案也很简单。有两种方案。

解决方案1:

下载第三方编译过的模块,进入下边的网站:
https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud

然后可以看到有一系列的 wordcloud 模块,那么我们应该下载哪个呢?
wordcloud‑1.7.0‑cp38‑cp38‑win_amd64.whl
wordcloud‑1.7.0‑cp38‑cp38‑win32.whl

解释一下
1.7.0 是模块版本
cp38 是 Python 的版本,就是 3.8 版本
amd64 是 64位
win32 是 32位

根据自己的需求下载,然后用 pip 命令安装下载模块即可,如:

pip install wordcloud‑1.7.0‑cp38‑cp38‑win32.whl

安装成功后,去 Pycharm 里边将解释器改为默认 Python 模块路径即可。

解决方案2:

安装 Microsoft Visual C++ 14.0 Build Tools ,一劳永逸的解决问题。
在安装 VC++ 14 之前,需要先升级一下 python 的 setuptools

pip install --upgrade setuptools

然后去微软 Visual Studio 网站下载 Build Tools
https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2019

不需要全部都安装,只需要安装里边的两个模块即可。
MSVCv142 - VS 2019 C++ x64/x86 build tools
Windows 10 SDK

安装完毕后再用 pip install wordcloud 就可以无错误的进行安装了!

Wordcloud 其他坑:

1. 不要用 wordcloud 作为文件名,否则会出现如下错误
AttributeError: partially initialized module 'wordcloud' has no attribute 'WordCloud' (most likely due to a circular import)

2. 中文出现方块的话,需要在生成对象的时候加上中文字体路径
wc = wordcloud.WordCloud(font_path=r"C:\Windows\Fonts\simhei.ttf")

ref:
https://wiki.python.org/moin/WindowsCompilers#Which_Microsoft_Visual_C.2B-.2B-_compiler_to_use_with_a_specific_Python_version_.3F