Si el código fuente de Python no se puede mantener en secreto, ¿no significa eso que todos los algoritmos pueden ser utilizados por todos?
Puedes usar pymod para cifrar el código e implementarlo
Un adelanto para ver cuándo se lanza un proyecto, solo hay unos pocos archivos,
entrada del programa del proyecto main.py
configuración del proyecto settings.py
módulo del proyecto de aplicaciones
directorio de complementos del proyecto plusins
Lista de directorios de lanzamiento del proyecto
2. Crear proyecto
Crear proyecto pymod crear demo1
cd demo1
Crear módulo pymod agregar mod1
Inicie pycharm y comience a escribir módulos de funciones.
Un módulo consta de tres archivos de forma predeterminada
__init__.py, handlers.py, param_schemas.py
La lógica empresarial está escrita principalmente en handlers.py
__init__.py
desde pymod.blueprint import Blueprintapi = Blueprint("/mod1")desde .handlers import * p>
param_schemas.py
schema_sfz = {
"type": "object",
"required": ["sfz", " nl"],
"properties ": {
"sfz": {
"type": "cadena",
"minLength": 18,
"maxLength": 18,
"description": "Número de identificación"
},
"nl": {
"tipo": "entero",
"mínimo": 0,
"máximo": 150,
"descripción": "edad"
p>}
}
}
handlers.py
desde . importar api
desde pymod.ext importar RequestHandler, params_validate, TrueResponse, FalseResponse
desde .param_schemas importar esquema_sfz
desde pymod.plugins importar sfz_check
@api.add_route(' /hola')
clase Hola(RequestHandler):
def get(self):
self.write('Hola mundo')
@params_validate(schema_sfz)
def post(self):
sfz = self.get_json_arg("sfz ")
nl =self.get_json_arg ("nl")
# self.write(TrueResponse(sfz=sfz, nl=nl))
if
sfz_check.check_sfzmhm(sfz):
self.write(TrueResponse(hint="Número de verificación de identificación aprobado"))
else:
self.write ( FalseResponse(hint="Error en la verificación del número de verificación de ID"))
3. Implementación del proyecto
Depuración y modificación del programa settings.py
# Ejecutar en modo de desarrollo Se debe completar el nombre del módulo
modules = ["mod1"]
modules_config ={
"mod1": {
"deny_ip ": "",
"allow_ip": "*"
}
}
Iniciar programa python main.py p>
No hay problema con la depuración, ingresa al modo de lanzamiento
En el directorio del proyecto
pymod pack mod1
Genera el archivo mod1.mod en el directorio de destino, cópielo al directorio de aplicaciones
Modificar configuración.py
# Se debe completar el nombre del módulo que se ejecuta en modo de desarrollo
módulos = []
Ejecute la prueba python main.py nuevamente
Todo está bien y el sistema se puede liberar.
guía de uso de pymod, ¿visitas?