【问题标题】:How can I run my python scripts on a windows machine without installing extra libraries?如何在不安装额外库的情况下在 Windows 机器上运行我的 python 脚本?
【发布时间】:2014-09-10 10:20:04
【问题描述】:

我正在编写一个 python 脚本,但它使用一个名为 Selenium 的库来执行它的大部分任务。该脚本需要能够在 Windows 环境中运行,并且我无法在决定运行该脚本的每台机器上安装 Selenium。我听说过 py2exe,但还没有尝试过,我不确定它在这里是否有帮助。使用 py2exe 时,我是否能够在无需安装 selenium 的情况下运行我的脚本?由于 selenium 没有内置在 python 中,因此它似乎不起作用。

我希望能够在 Windows 上运行此脚本而无需安装 python,但如果我无需安装 selenium 就可以让它工作,我会很满意。我不确定这有多大可能,而且我实际上对使用 python 进行开发还很陌生,所以我不知道这个想法是否可行。

实际上,其他人会使用这个脚本,如果他们不必为了使用脚本而安装 python 和 selenium 库的麻烦,那将是最好的。他们一般不完全熟悉 python 或编程,所以安装 selenium 对他们来说可能是个问题。我想尽可能方便地使用我的脚本。

该脚本主要处理网站的自动化。我知道这可以在 vbs 中完成,并且在 windows 的 vbs 中会更好,但我已经在 python 中完成了它并且不想在 vbs 中重新编写它,因为我已经已经在这上面花了很多时间。

我尝试了很多 Google 搜索,但找不到太多关于这个主题的信息,这让我相信这是不可能的。我找到的最接近的解决方案是 py2exe,但如果我的脚本使用未内置于 python 中的库,它仍然可以工作吗?(selenium)

对不起,如果这个问题有点笨拙,我只是想学习。我很感激任何帮助! :)

【问题讨论】:

  • 你看过文档了吗? py2exe.org/index.cgi/ListOfOptions
  • 我已经在下面回答了你的问题,但为了进一步评论,我想说明 pyinstaller、py2exe、cx_freeze 的目标是创建一个包含 python 库和任何脚本的二进制文件以便无需安装这些资源即可分发二进制文件。

标签: python windows python-2.7 selenium


【解决方案1】:

你可以在py2exe中包含外部库

来自py2exe FAQ

py2exe 如何决定您需要哪些模块?

为了确定哪些模块应该放在最终的 .exe 文件中,py2exe 对您要打包的脚本进行递归搜索,以查找其依赖项,进而找到它们的所有依赖项。编写此过程以便它可以输出大量调试信息,向您显示哪些模块说服 py2exe 包含哪些其他模块。要显示此调试跟踪,请使用至少一个 -d 选项独立运行 py2exe“模块查找器”代码以打开“调试”:

【讨论】:

    【解决方案2】:

    是的,py2exe 将构建一个包含 python 的可执行文件,因此不需要在任何额外的计算机上安装 python。当您使用 py2exe 构建可执行文件时,您可以在构建中包含或排除模块。

    PyInstaller 是另一个用于构建可执行文件的好模块,它会自动捆绑任何包含。与 py2exe 一样,您可以将所有内容捆绑到一个可执行文件中,包括额外的数据文件、隐藏控制台窗口等等。

    【讨论】:

      猜你喜欢
      • 2015-08-21
      • 2023-01-25
      • 2016-06-23
      • 2011-07-29
      • 2010-10-03
      • 2019-12-14
      • 2011-12-21
      • 2016-11-26
      • 1970-01-01
      相关资源
      最近更新 更多