python源码加密

将.py文件编译为.so文件
首先,安装python-dev、gcc环境
然后使用pip安装Cython
接下来编写setup.py,内容如下:

from distutils.core import setup
from Cython.Build import cythonize

# 需要编译的文件列表
setup(ext_modules = cythonize(["Common.py", "MySQL.py", "WorkFlow.py", "main.py"]))

执行如下命令完成编译

python setup.py build_ext


编译完成后,当前目录会生成bulid目录,将其下lib.开头的目录中的.so文件拷贝到生产环境中即可

最后,在生产环境中调用,
比如程序的入口在main.py中main方法,代码如下,

def main():
    app.run(host='0.0.0.0', port=80)

则调用时代码如下

import main
main.main()

PS:window + python3环境中需要安装VC2010及以上版本,具体版本参考python3的编译时VC版本,查看方法:

import sys
print(sys.version)
'3.7.9 (tags/v3.7.9:13c94747c7, Aug 17 2020, 18:58:18) [MSC v.1900 64 bit (AMD64)]'

MSC v.1900 64 bit,

majorVersion = int(s[:-2]) - 6
minorVersion = int(s[2:3]) / 10.0

即:
majorVersion = 19 - 6
minorVersion = 0 / 10.0

majorVersion + minorVersion = 13 + 0.0 = 13.0

即,当前python3使用的是VC2015版本

即:安装VS2015,重点是VC++相关组部件

另外,在windows环境中生成的是.pyd文件,python调用.pyd的方法

# 源文件 test.py

class Hello:
    def work(self):
        print("hello word!")


# 编译后生成 test.xxxx.pyd,重命名为test.pyd并放置于调用文件同目录
# 调用文件 main.py
import test as testapp
h = testapp.Hello()
h.work()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值