如何基于python实现脚本加密


Posted in Python onDecember 28, 2019

这篇文章主要介绍了如何基于python实现脚本加密,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

如何基于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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现SVN的目录周期性备份实例
Jul 17 Python
Python实现将DOC文档转换为PDF的方法
Jul 25 Python
致Python初学者 Anaconda入门使用指南完整版
Apr 05 Python
python实现屏保计时器的示例代码
Aug 08 Python
Python引用计数操作示例
Aug 23 Python
在python中实现强制关闭线程的示例
Jan 22 Python
python 判断三个数字中的最大值实例代码
Jul 24 Python
python 串口读取+存储+输出处理实例
Dec 26 Python
Python实现投影法分割图像示例(一)
Jan 17 Python
Django Model中字段(field)的各种选项说明
May 19 Python
Python中Pyspider爬虫框架的基本使用详解
Jan 27 Python
pycharm Tab键设置成4个空格的操作
Feb 26 Python
python使用配置文件过程详解
Dec 28 #Python
python正则表达式匹配IP代码实例
Dec 28 #Python
python爬虫模拟浏览器访问-User-Agent过程解析
Dec 28 #Python
python爬虫添加请求头代码实例
Dec 28 #Python
python使用rsa非对称加密过程解析
Dec 28 #Python
Python遍历字典方式就实例详解
Dec 28 #Python
python基于opencv检测程序运行效率
Dec 28 #Python
You might like
ThinkPHP多表联合查询的常用方法
2020/03/24 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
网站防止被刷票的一些思路与方法
2015/01/08 PHP
php编写批量生成不重复的卡号密码代码
2015/05/14 PHP
Thinkphp开发--集成极光推送
2017/09/15 PHP
php中各种定义变量的方法小结
2017/10/18 PHP
实例分析PHP将字符串转换成数字的方法
2019/01/27 PHP
PHP图像处理 imagestring添加图片水印与文字水印操作示例
2020/02/06 PHP
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
如何设置一定时间内只能发送一次请求
2014/02/28 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
jquery实现仿新浪微博评论滚动效果
2015/08/06 Javascript
浏览器兼容的JS写法总结
2016/04/27 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
2016/05/10 Javascript
js拼接html字符串的注意事项
2016/10/13 Javascript
详解javascript中的变量提升和函数提升
2018/05/24 Javascript
在vue.js中使用JSZip实现在前端解压文件的方法
2018/09/05 Javascript
如何对react hooks进行单元测试的方法
2019/08/14 Javascript
python+selenium开发环境搭建图文教程
2017/08/11 Python
python使用threading获取线程函数返回值的实现方法
2017/11/15 Python
python scrapy重复执行实现代码详解
2019/12/28 Python
PyTorch的torch.cat用法
2020/06/28 Python
小结Python的反射机制
2020/09/28 Python
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
运行时异常与一般异常有何异同?
2014/01/05 面试题
实习求职信
2013/12/01 职场文书
办加油卡单位介绍信
2014/01/09 职场文书
党的群众路线查摆剖析材料
2014/10/10 职场文书
小学生优秀评语
2014/12/29 职场文书
2015年法制宣传月活动总结
2015/03/26 职场文书
fastdfs+nginx集群搭建的实现
2021/03/31 Servers
python基于opencv批量生成验证码的示例
2021/04/28 Python
vue+springboot实现登录验证码
2021/05/27 Vue.js
在Python中如何使用yield
2021/06/07 Python
使用CSS连接数据库的方式
2022/02/28 HTML / CSS
MySQL优化及索引解析
2022/03/17 MySQL