我已经安装了Python 3.5,并且正在运行

pip install mysql-python

它给出了如下错误

错误:Microsoft Visual c++ 14.0是必需的(无法找到vcvarsall.bat)

我已经添加了以下行到我的路径

C:\Program Files\Python 3.5\Scripts\;
C:\Program Files\Python 3.5\;

C:\Windows\System32;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC;
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC

我的电脑上安装了64位的Windows 7。

什么解决方案可以减少这个错误,并通过pip正确安装模块。


当前回答

使用Visual c++ 2015 Build Tools的链接。这将安装Visual c++ 14.0而不安装Visual Studio。

其他回答

我只是在使用最新的Python 3.6时遇到了同样的问题。Windows OS 10家庭版和64位操作系统。

解决方法:

通过控制面板卸载任何版本的Visual Studio 安装Visual Studio 2015并选择将安装的默认选项 Visual c++ 14.0 您可以使用PyCharm安装Scrapy:菜单项目→项目解释器→+(安装Scrapy) 通过导入检查REPL和PyCharm中的Scrapy。您应该不会看到任何错误。

安装spaCy模块时也遇到同样的问题。我检查了控制面板,我已经安装了几个Microsoft Visual c++的可重分发版本。

我选择了“Microsoft Visual Studio Community 2015”,它已经安装在我的电脑上→“修改”→勾选“Visual c++ 2015常用工具”。然后需要一些时间和下载超过1gb来安装它。

这解决了我的问题。现在我已经安装了spaCy。

如果Visual Studio不是你的东西,而你正在使用VS Code,那么这个链接将指导你通过安装程序让c++在你的Windows上运行。

您只需要完成先决条件部分。 https://code.visualstudio.com/docs/cpp/config-msvc/#_prerequisites

这与其他答案相似,但这个链接可能比这里的一些回答更陈旧。

PS:别忘了运行pip install——upgrade setuptools

首先,你需要从https://visualstudio.microsoft.com/downloads#other下载visualstudio构建工具 重命名文件vs_buildtools.exe(不是必需的,但您必须修改下面的脚本)

start-process -wait -filepath vs_buildtools.exe -ArgumentList '--quiet --wait --norestart --nocache --installPath C:\BuildTools `
  --add Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64 `
  --add Microsoft.VisualStudio.Component.Windows10SDK.19041 `
  --add Microsoft.VisualStudio.Component.Windows10SDK `
  --add Microsoft.VisualStudio.Component.VC.CoreIde `
  --add Microsoft.VisualStudio.Component.VC.CMake.Project `
  --add Microsoft.VisualStudio.Component.VC.14.29.16.11.CLI.Support `
  --add Microsoft.VisualStudio.ComponentGroup.UWP.VC.v142'

我在这里为windows docker用户创建了一个单独的问题和答案,Microsoft Visual c++ 14.0是必需的,在windows docker上安装pip包

如果你已经安装了Visual Studio Build Tools(如其他评论中所述),并升级了setuptools,但仍然无法工作:

确保在x86或x64本机工具命令提示符下运行pip。

它可以在Windows开始菜单的VS文件夹下找到。默认的命令行提示符可能不会为Pip提供VS构建工具的路径,就像在我的情况下一样。