我正在开发一个Python软件,将分发给我的雇主的客户.我的雇主希望使用时间限制的许可证文件来限制软件的使用.
如果我们分发.py文件甚至.pyc文件,那么很容易(反编译)删除检查许可文件的代码.
另一个方面是我的雇主不希望我们的客户阅读代码,担心代码可能被盗或至少是"新颖的想法".
有没有一个很好的方法来处理这个问题?优选使用现成的解决方案.
该软件将在Linux系统上运行(所以我认为py2exe不会这样做).
我正在寻找如何隐藏我的Python源代码.
print "Hello World!"
Run Code Online (Sandbox Code Playgroud)
我如何编码这个例子,以便它不是人类可读的?我被告知使用base64,但我不知道如何.
我已经开始在桌面上运行个人python应用程序.我使用wxPython作为GUI工具包.如果需要这种类型的应用程序,我可能希望将其商业化.
我不知道部署"真实"的Python应用程序,尽管我py2exe过去曾使用过不同的成功.我如何模糊代码?我可以以某种方式只部署字节码吗?
一个理想的解决方案不会危害我的知识产权(源代码),不需要直接安装Python(虽然我确定它需要一些嵌入式解释器),并且是跨平台的(Windows,Mac和Linux的).有谁知道这个领域的任何工具或资源?
谢谢.
我有以下情况:我正在开发几个使用我编写的库模块的项目.库模块包含几个类和函数.在每个项目中,使用库的一些代码子集.
但是,当我为其他用户发布项目时,我只想放弃该项目使用的代码而不是整个模块.这意味着,对于给定的项目,我希望从库代码中删除未使用的库函数(即创建一个新的简化库).有没有可以自动执行此操作的工具?
编辑
一些澄清/答复:
让我们假设有一个大的商业项目(又名Project),它使用Python来管理插件,以配置可以由Project附加和使用的新控制表面.
有一个小的信息泄漏,Project的Python API的某些部分泄露给公共信息,人们能够编写Python脚本,这些脚本由底层Python实现调用,作为Project的插件加载机制的一部分.
此外,使用inspect模块和原始__dict__读数,人们能够找到Project的底层Python实现的主要部分.
有没有办法保密Python密码?
快速浏览Python的文档揭示了一种以inspect这种方式抑制模块导入的方法:
import sys
sys.modules['inspect'] = None
Run Code Online (Sandbox Code Playgroud)
它完全解决了这个问题吗?
我想知道 Python 代码是否可以像 Javascript 一样被压缩/非人类可读。我知道缩进在Python中很重要,它的核心理念是可读性,但是有没有一种方法可以允许压缩Python代码呢?顺便说一句,Python 2.7。
我在Linux上编译了一个名为abc.pyc的Python 2.6程序.如果我跑
./abc.pyc
Run Code Online (Sandbox Code Playgroud)
它运行正常.但是,如果我将其重命名为abc(即没有pyc扩展名),则无法运行.它给出了错误消息:
ImportError: No module named abc
Run Code Online (Sandbox Code Playgroud)
如何在没有.pyc扩展名的情况下运行我的程序?
更新: 我想运行编译(pyc)版本而不是py版本
或者,我知道我可以使用Cython将模块编译为.so文件,但是我可以将我的主Python程序编译为可以在Linux平台上执行的程序吗?如果是这样,将欣赏Cython命令行示例.
更新 我把Cython问题作为一个单独的问题提出来了.
python ×7
compression ×1
decompiling ×1
deployment ×1
inspect ×1
licensing ×1
obfuscation ×1
performance ×1
python-2.7 ×1
readability ×1