4

我想创建一个批处理文件来帮助多个用户在 Windows 共享驱动器上安装 numpy。基本上,用户根本不需要输入选项或执行任何操作(就像他们双击 numpy 可执行安装程序一样)。

Python 安装已经存在。用户只需运行批处理文件并将 numpy 安装到默认Python\Lib\site-packages位置。

我试过使用以下命令:

numpy-1.6.1-win32-superpack-python2.7.exe /qn
numpy-1.6.1-win32-superpack-python2.7.exe /quiet
numpy-1.6.1-win32-superpack-python2.7.exe /passive

在所有情况下,批处理文件都与可执行文件位于同一目录中,并且会弹出一个图形窗口,用户必须在其中一次又一次地单击“下一步”。有没有办法使用所有默认选项运行安装并且没有用户交互?

4

3 回答 3

2

看起来 numpy 安装过程实际上是由两个安装程序组成的。外层是 NSIS,内层是 python 的 distutils 安装程序。所有 NSIS 安装程序都有/s静默安装,但是这个 NSIS 安装程序调用 distutils 安装程序。

不幸的是, distutils 安装程序似乎没有任何静默标志。我只看到两个明显的选择:

  • 自己编译 numpy 并让它发出一个 msi 安装程序(因此,应该能够静默安装)。使用python setup.py bdist_msi. 如果您愿意,可以使用bdist_nsi生成 NSIS 包。
  • 使用AutoIt之类的工具来自动化 distutils 安装程序。只需等待 disutils 窗口出现并向其发送一系列键盘快捷键即可自动安装。

后者似乎是更实际的解决方案。您还可以尝试让 python 开发人员在 distutils 安装程序中获取静默标志...

于 2012-04-16T13:31:46.380 回答
1

如果您有正确的 .exe 包,则无需从源代码安装它。

我从http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy 获取了最新的 numpy .exe

并从下载文件夹中工作,您只需在控制台中键入以下内容:

easy_install c:\users\YourName\downloads\numpy‑MKL‑1.9.1.win32‑py2.7.exe
于 2015-01-04T18:09:27.640 回答
0

我使用的无人值守安装方法如下:

%PYTHON_PATH%\Scripts\easy_install c:\temp\numpy-1.9.0.zip
于 2014-10-11T07:32:42.340 回答