使用cython把python编译so】的更多相关文章

1.需求 为了保证线上代码安全和效率,使用python编写代码,pyc可直接反编译,于是把重要代码编译so文件 2.工作 2.1 安装相关库: pip install cython yum install -y gcc python-devel 2.2 创建setup.py #!/usr/bin/env python # coding=utf-8 from distutils.core import setup from Cython.Build import cythonize setup(…
Python 2.7 cython cythonize py 编译成 pyd 谈谈那些坑 前言 基于 python27 的 pyc 很容易被反编译,于是想到了pyd,加速运行,安全保护 必要准备 安装cython:pin install cython 下载安装:VCForPython27.msi Cython document:https://cython.readthedocs.io/en/stable/src/userguide/source_files_and_compilation.ht…
用Cython加速Python程序 我没有拼错,就是Cython,C+Python=Cython! 我们来看看Cython的威力,先运行下边的程序: import time def fib(n): if n==0: return 0 if n==1: return 1 return fib(n-1)+fib(n-2) t=time.time() print(fib(40)) print(time.time()-t) $ python fib.py 102334155 59.36725544929…
注:.pyc也有一定的保护性,容易被反编译出源码... 项目发布时,为防止源码泄露,需要对源码进行一定的保护机制,本文使用Cython将.py文件转为.so进行保护.这一方法,虽仍能被反编译,但难度会比较大.另外,Cython是Python的超集. 自行安装Cython 1,创建complie.py文件 from Cython.Build import cythonizefrom Cython.Distutils import build_extfrom setuptools import se…
2.准备Python编译环境 2.1下载Python2.7.6.tgz.ipython1.2.1.tgz.sqlite-autoconf-3071401.tar.gz 2.2安装Python2.7.6.ipython1.2.1.tgz.sqlite-autoconf-3071401.tar.gz 2.3安装前准备 yum -y install readline-devel gcc 2.4编译安装Python2.7.6 tar -zxvf Python2.7.6.tgz cd Python2.7.…
原文网址:http://blog.csdn.net/wangpengwei2/article/details/17580589 一.安装eclipse 1.从http://www.eclipse.org/downloads/index-developer.php?osType=linux&release=undefined下载linux版本的eclipse 2.使用sudo tar xvfz eclipse-jee-galileo-SR2-linux-gtk.tar.gz  -C /opt,解压…
1.先在CodeBlock中新建C或C++工程. CodeBlock新建工程步骤:File——New——Project——Console applications——C或C++都可——Project所在路径(不可使用中文路径!) 2.工程目录下 main.c 改成 *.py 文件,本文改成test.py. 3.单击菜单栏Tools——Configure tools——Add按钮,出现Edit Tool页面,在此配置Python编译选项. 4.单击Settings——Editor——Keyboar…
大家都知道python是脚本语言,源码可以直接执行,有时需要提高执行效率或者保密(因为有时候不想让使用人看到源码文件),那就涉及到python编译了,那么该如何做呢? 有两种方法可以做到. 1.一种是直接使用命令编译成pyc或者pyo文件. 新建test.py文件,代码如下: #!/usr/bin/python print "hello world!" 编译成pyc文件使用命令: python -m py_compile test.py -m py_compile是加载py_compi…
背景 近期项目到了部署的阶段.由于项目后台和算法都是用Python "撸的",但是又不希望将源代码直接 "release" 到 “客户”哪里.于是开始思考... 首先,按照惯性思维,能否将编译后的东东放出去呢?(类似java或.net 的部署方式) 再次,是不是能否将“关键部分”的代码保护起来呢? 解决方案 按照第一种思路,我们能将Python编译好的东西release出去呢?经过一些简单的理论查找和时间.发现了可行的解决办法.于是乎,就在今天的博客随笔中将其记录下…
利用python 编译工程,生产pyc文件 pyc文件好处:是一种二进制机器码,并且隐藏了源文件代码,但是有和py文件一样的功能(可以理解为效果一样) 所以可以将代码隐藏,便于商业价值,保护代码隐私还能和py文件一样可运行 import compileall compileall.compile_dir(r'/path') 所以在一些情况下,需将源文件工程批量生成pyc文件来隐藏代码. 上面代码即为 批量生成pyc的脚本更改path路径为根目录即可(根目录为最顶层目录需包括所有用到的文件) 运行…