我的python脚本取决于pycrypto
,boto3
和pyYaml
。我必须将此脚本提供给严格非技术性的客户,甚至可能无法访问互联网。
有没有办法将所有内容打包在一起,以便客户端可以只提取zip文件并让脚本为他开箱即用?此外,该脚本应该能够在Windows / Mac / Linux上运行,并且每个脚本都可以拥有自己的.zip文件。
我过去曾与pip
,requirements.txt
和setuptools
合作,但从未做过像这样非常简陋的事情。实现这一目标的最佳方式是什么?
答案 0 :(得分:3)
如果要在Windows上部署,py2exe将帮助您构建独立的可执行文件。查找-c
和--bundle-files
选项,它们将文件捆绑到包含可执行文件的压缩存档中。
如果部署到Mac,请尝试使用py2app。
根据我的经验,这些捆绑者很挑剔,至少需要一些小小的实验。一些流行的Python包(例如PIL / Pillow,lxml,numpy,pandas,任何需要本机C运行时的东西)在与bundler工具混合时可能会有问题。因此不只是捆绑并交付给非技术客户。在交货前进行测试和(如有必要)调整。
这不是安装或提供Python代码的完整列表。其他几个from vinta's awesome python list。