zoukankan      html  css  js  c++  java
  • 脚本加密python

      

    from pathlib import Path
    import python_minifier
    import compileall
    import sys
    
    def get_save_path(from_dir, to_dir, p):
        ori_dir = str(from_dir.resolve())
        _p = str(p.resolve())
        return to_dir.joinpath(_p.split(ori_dir)[-1][1:])
    
    
    def mix_pyminifier(from_dir, to_dir):
        for _p in from_dir.rglob('*.py'):
            with _p.open(encoding='utf-8') as read_fp:
                res = python_minifier.minify(read_fp.read())
    
            _to_p = get_save_path(from_dir, to_dir, _p)
            Path(_to_p.parent).mkdir(exist_ok=True, parents=True)
            with _to_p.open('w', encoding='utf-8') as write_fp:
                write_fp.write(res)
    
    
    def py2pyc(from_dir, to_dir):
        compileall.compile_dir(str(from_dir.resolve()), maxlevels=20, force=True)
    
    
    def pyc2py(from_dir, to_dir):
        pass
    
    
    if __name__ == '__main__':
        origin_dir = Path(sys.argv[1])
        target_dir = Path(sys.argv[2])
        pymini_dir = target_dir.joinpath('pymini')
        pyc_dir = target_dir.joinpath('pyc_dir')
        py_dir = target_dir.joinpath('py_dir')
        mix_pyminifier(origin_dir, target_dir)
        # py2pyc(origin_dir, pyc_dir)
        # pyc2py(pyc_dir, pyc_dir)

    混淆项目代码步骤:

  • 相关阅读:
    数据库连接池系列之——c3p0
    spring配置
    flume ng系列之——flume安装
    flume ng之组件介绍
    flume ng之TailSource
    Flume-NG + HDFS + HIVE日志收集分析
    flume+hadoop
    Flume+kafka+storm+hdfs
    IOS中坐标转换
    tabBarItem是模型,只有控件才有textColor属性
  • 原文地址:https://www.cnblogs.com/zknublx/p/12106131.html
Copyright © 2011-2022 走看看