如何在没有安装Python的情况下在Windows服务器上运行Python程序?

2024-05-13 00:52:31 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我写了一个Python脚本来做一些简单的事情。它本来要在Unix服务器上运行,但是由于网络安全设置不好,TPTB拒绝更改,我们需要在Windows服务器上运行它。但是,上述Windows服务器的管理员拒绝做任何有帮助的事情,比如安装Python。

在没有Python的Windows上运行Python脚本有哪些选择?

考虑事项1:

Py2Exe-我在谷歌搜索后发现了这个,看起来很有希望。据我所知,它将生成一堆文件,但我们可以将该目录xcopy到我们的Windows机器上,它将完全隔离,没有任何外部依赖项。有人知道这是怎么回事吗?显然,这取决于我的Python脚本,但幸运的是,这个脚本非常简单,只使用内置的Python库,如urllib2和urlparse。

考虑事项2:

我们可以假设Windows服务器至少也安装了一些版本的.NET Framework,这让我们想起了IronPython。我以前从没用过这个,但我一直想用。据我所知,它将把Python代码编译成与CLS兼容的IL代码,这些代码可以在.NET运行时下本地运行。但是,这是否需要在服务器上安装其他.NET库?我能把这些dll和我的程序捆绑在一起吗?或者,是否需要重写Python脚本来调用特定于.NET Framework的类,而不是使用urllib2或urlparse之类的东西?

谢谢!

PS-讽刺的是:我实际上几乎不懂Python,而且我是一个.NET专家,但我用Python编写脚本,因为我被告知它将在Unix服务器上运行。如果我知道我们最终会在Windows服务器上运行这个程序,我会在大约十分之一的时间内用C编写这个程序。失败。


Tags: 代码程序服务器脚本netwindows管理员unix
1条回答
网友
1楼 · 发布于 2024-05-13 00:52:31

他们会让你把可执行文件复制到服务器上吗?如果是这样的话,那么您应该能够对Python进行非管理员安装,或者使用Portable Python,它可以直接复制到一个文件夹中,而无需任何安装。

Py2exe没有什么问题,但它确实意味着每次更新脚本时都必须将其构建为一个新的可执行文件。此外,Py2exe的启动时间比Python解释器稍长,因为它每次运行时都必须将Python dll提取到一个临时文件夹中;这当然只在经常运行脚本时才重要。

相关问题 更多 >