【问题标题】:How to install pywin32 module in windows 7 [duplicate]如何在 Windows 7 中安装 pywin32 模块 [重复]
【发布时间】:2011-06-19 06:46:33
【问题描述】:

我正在尝试安装 pywin32。我是从 sourceforge.net 下载的。当我跑步时

setup.py install

它显示“无法找到 vcvarsall.bat”。我用谷歌搜索了一下,发现我必须安装 MinGW 并设置路径然后运行 ​​

python setup.py build --compiler=mingw32

但它正在显示

Can't find a version in Windows.h

有人可以帮忙吗? (我安装了 Visual Studio 2010 Ultimate 的试用版,并安装了 MinGW C 和 C++ 编译器。操作系统:Windows 7。)

谁能告诉我一个来源,我可以从哪里下载已经在 MinGW 中编译的 Python 二进制文件,所以我不必做所有这些。或者如果我能得到一个已经有 Windows 模块的 python。

【问题讨论】:

    标签: python c compiler-construction mingw pywin32


    【解决方案1】:

    您可以通过指向此包从 PYPI 安装 pywin32 wheel 包:https://pypi.python.org/pypi/pypiwin32 无需担心首先下载包,只需使用 pip:

    pip install pypiwin32
    

    目前我认为这是“最简单”的工作方式 :) 希望这会有所帮助。

    【讨论】:

    • 能这么安装真是太好了。但是尝试编写一个 Windows 服务并使用虚拟环境运行它 - 直到你使来自pypiwin32_system32 的 DLL 对系统可见。运行pywin32_postinstall.py 也不起作用,因为它会在pywin32_system32 中查找DLL(中间没有pi)。在这种情况下,使用@jpmc26 的答案效果更好。这是一个关于该问题的不那么受欢迎但非常有用的问题的链接:stackoverflow.com/a/34942168/279806
    • pip 是安装 python 库的最简单方法。(在任何平台上)
    • 似乎不适用于 python 3.6(适用于 3.5)
    • 我认为windows上正确的命令应该是:python -m pip install pypiwin32(pip不一定在路径中)
    • 根据github.com/mhammond/pywin32/issues/1151#issuecomment-360563280,我认为您现在应该使用pywin32,而不是pypiwin32,并且至少从2018年初开始就是这种情况。您是否能够测试然后更新这个答案相应地?
    【解决方案2】:

    您只是想安装它,还是希望从源代码构建?

    如果您只需要安装,最简单的方法是使用此处提供的 MSI 安装程序:

    http://sourceforge.net/projects/pywin32/files/pywin32/ (对于更新版本)

    确保您获得正确的版本(匹配 Python 版本、32 位/64 位等)

    【讨论】:

    【解决方案3】:

    我不同意 the accepted answer 是“最简单的”,特别是如果你想使用 virtualenv。

    您可以改用Unofficial Windows Binaries。从那里下载相应的轮子,并使用pip 安装它:

    pip install pywin32-219-cp27-none-win32.whl
    

    (确保您选择了适合 Python 的正确版本和位数的那个)。

    您也许可以通过pip 获取 URL 并安装它,而无需先下载它,但它们使获取 URL 变得有点困难。最好自己下载并托管在某个地方。

    【讨论】:

    • 赞成。但是请注意,原始答案是 5 岁,在使用 .whl 格式之前:)
    • @CoreyGoldberg 没错,但即使在轮子之前,您实际上也可以对二进制鸡蛋做类似的事情:easy_install pywin32-216.win32-py2.7.exe。优点是您可以编写脚本并且它支持 virtualenv。也许不是 5 年前,而是好几年(至少 3 或 4 年)。
    • 很公平......但我很好奇你为什么指向“非官方的windows二进制文件”? AFAICT,您可以在我的原始答案中从 .whl 文件主机 pip install 。但是,它们尚未针对 build 220 进行更新(而非官方构建站点上的二进制文件已更新)。我打算更新我对现代 pip 工具的答案,但想指出一个新更新的构建。 (FWIW 在发布此答案之前,我没有使用过 Windows :)
    • @CoreyGoldberg ?我在您链接的 SourceForge 上没有看到任何轮子。只有二​​进制 egg 可执行文件。这个非官方网站为大量 Python 库提供了轮子。我对他们的体验通常非常好。他们很好地打包了启动和运行所需的一切,即使官方软件包告诉您单独安装某些东西。因此,它们往往是我为 Python 编写 Windows 二进制文件的首选。他们可能会落后一点,但很快就会赶上来。
    • 你是对的。官方版本根本没有在 PyPI 上发布。包名称刚刚在 PyPI 上注册,并链接到实际发布 .exe 更新的 sourceforge url:sourceforge.net/projects/pywin32/files 如果这实际上是一个使用率很高的项目,它应该真的移动到现代开发托管,具有现代 DVCS、问题跟踪和上传到 PyPI 的健全的发布机制。如果我有任何兴趣,我会主动提供帮助,但我真的没有。也许有人应该推动维护者(马克哈蒙德)看看他的计划是什么,以及他是否需要帮助。
    【解决方案4】:

    我遇到了完全相同的问题。问题是 Anaconda 没有在 windows 注册表中注册 Python。

    1) pip install pywin
    2) 执行此script 在 windows 注册表中注册 Python
    3)下载相应的包形式Corey Goldberg的答案,python会被检测到

    【讨论】:

      【解决方案5】:

      引用https://github.com/mhammond/pywin32的自述文件:

      到目前为止,使用 pywin32 最简单的方法是从 most recent release 获取二进制文件

      只需从 https://github.com/mhammond/pywin32/releases 下载适用于您的 Python 版本的安装程序并运行它,即可完成。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-05-03
        • 2020-09-21
        • 1970-01-01
        • 2016-11-30
        • 2012-10-06
        • 2021-11-04
        • 2013-06-22
        相关资源
        最近更新 更多