PYMETRICK
=========
Pymetrick version 0.80.4
Mini marco de desarrollo basado en Python 3.11+ ( TODO EN UNO ), al disponer de todos los módulos necesarios para cualquier desarrollo web (templates, session/cookies, routing de solicitudes, gestión MySQL y SQLite, rst - reStructuredText, identificación de conexiones, tratamiento de imagenes, tratamiento de correos,...etc) permite prescindir de librerias ajenas a las librerías estándar de PYTHON, aunque el uso de librerías externas no se excluye completamente.
Se aceptan contribuciones de codigo que permitan la adaptación a desarrollos empresariales, con igual licencia que PYMETRICK.
INDICE DE MODULOS
-----------------
- IMAGE o cómo gestionar imagenes
- SQLDB o cómo gestionar BB.DD. (mariaDB)
- MAIL tratamiento de correo
- EXCHEQUER tratamiento fiscal e identificación (NIF/CIF/NIE/VAT) y Registro de Operadores Intracomunitarios
- HELPERS o gestión de utilidades universales de uso común
- RST o reStructuredText gestiona el formato de textos convirtiendolo en html
- COMMON o dónde identificar valores universales
- FPDF generación de documentos PDF ( versión de pyFPDF con incorporaciones de pymetrick )
- ISSUE formatos comerciales como facturas, tickets (PDF y ESC/POS), etiquetas de almacén,...
- BUCKET gestiona OBJECT STORAGE o servicios compatibles con AWS S3
IMAGE
-----
Este módulo permite la adaptación o manipulación de las imágenes a cualquier necesidad, desde el peso de las imágenes hasta su formato.
Importar Image:
from pymetrick.image import *
Utilidades con imagenes :
image_size(__path__) Comprueba las dimensiones de la imagen.
image_resize(__path__,__factor__=1,__resized_path__='') Convierte fichero de imagen a un tamaño diferente, ademas es posible cambiar el tipo de imagen de png, jpeg o gif a otro cuando se renombra el fichero de imagen resultante.
strip_metadata(image_path,newImage=None) Elimina los metadatos EXIF de una imagen, guardando en el mismo nombre de imagen o bien en otra imagen nueva.
image2html('logo.png') Devuelve una imagen en base64 como un string de forma que se pueda utilizar como imagen embebida en css o html.
image2base64('logo.png') Devuelve una imagen en base64 extendido ( file_name$string_base64).
image_download('http://nadadenada.com/coche.png', '/img/coche_2.png') Descarga una imagen desde una url con <urllib> y permite renombrar el fichero.
image_checksums('logo.png') Devuelve un hash como un string que identifica la imagen para ser comparada con otras imagenes.
image_compare(file1,file2) Devuelve 0 si las imagenes comparadas son iguales, en caso contrario devolvera un valor distinto de 0.
image_qrcode('/home/content.png'logo.png') Devuelve datos/informacion en formato qrcode como imagen png
SQLDB
--------
Gestión de la conexión con BB.DD. como MySQL (MYSQL.CONNECTOR), PostgreSQL (PSYCOPG2) y SQLite.
Incluye funciones dirigidas a conexión, reconexión, así como la creación, modificación, eliminación y utilidades de BB.DD.,tablas, indices,...
SESSION
-------
Identifica las conexiones de clientes mediante JSON WEB TOKENS stateless authentication, que se intercambian entre el
servidor WEB y el cliente a través de :
HTTP_COOKIE
HTTP_X_AUTHORIZATION or X_REQUEST_WITH
HTTP_HOST
HTTP_CLIENT_IP o HTTP_X_FORWARDED_FOR o REMOTE_ADDR
Incorpora también funciones de encriptación y generación de passwords
MAIL
-----
Con el módulo MAIL se gestiona el correo electrónico. Condición necesaria es disponer de un servidor SMTP y POP3 o IMAP
Parámetros necesarios :
sendMail() Enviar mail e incorporar ficheros adjuntos si fuera necesario
_sender - str - enviado desde
_to - list - enviar a
_cc - list - enviar copias
_bcc - list - enviar copias ocultas
_subject - str - asunto
_text - str - text/plain del mensaje
_html - str - text/html del mensaje
_user - str - usuario
_password - str - password
_smtpserver - str - servidor smtp
_smtp_port - str - puerto
_imapserver - str - servidor imap ( crea correo en carpeta SENT )
_imap_port - str - puerto
_files - list - ficheros adjuntos
_output - str - el contenido del mensaje se grabara como un fichero
getMail() Recepción de mail desde POP3|IMAP
_user - str - usuario
_password - str - password
_imapserver - str - servidor IMAP
_pop3server - str - servidor POP3
_port - str - puerto
_criteria - str -
ALL - devuelve todos los mensajes que coinciden con el resto del criterio
ANSWERED - coincide con los mensajes con la bandera \\ANSWERED establecida
BCC "cadena" - coincide con los mensajes con "cadena" en el campo Bcc:
BEFORE "fecha" - coincide con los mensajes con Date: antes de "fecha"
BODY "cadena" - coincide con los mensajes con "cadena" en el cuerpo del mensaje
CC "cadena" - coincide con los mensajes con "cadena" en el campo Cc:
DELETED - coincide con los mensajes borrados
FLAGGED - coincide con los mensajes con la bandera \\FLAGGED establecida (algunas veces referidos como Importante o Urgente)
FROM "cadena" - coincide con los mensajes con "cadena" en el campo From:
KEYWORD "cadena" - coincide con los mensajes con "cadena" como palabra clave
NEW - coincide con los mensajes nuevos
OLD - coincide con los mensajes antiguos
ON "fecha" - coincide con los mensajes con Date: coincidiendo con "fecha"
RECENT - coincide con los mensajes con la bandera \\RECENT establecida
SEEN - coincide con los mensajes que han sido leídos (la bandera \\SEEN esta estabecido)
SINCE "fecha" - coincide con los mensajes con Date: despues de "fecha"
SUBJECT "cadena" - coincide con los mensajes con "cadena" en Subject:
TEXT "cadena" - coincide con los mensajes con el texto "cadena"
TO "cadena" - coincide con los mensajes con "cadena" en To:
UNANSWERED - coincide con los mensajes que no han sido respondidos
UNDELETED - coincide con los mensajes que no están eliminados
UNFLAGGED - coincide con los mensajes que no tienen bandera
UNKEYWORD "cadena" - coincide con los mensajes que no tienen la palabra clave "cadena"
UNSEEN - coincide con los mensajes que aun no han sido leidos
_outputdir - str -
deleteIMAP() Eliminar mail de servidor IMAP
_user - str - usuario
_password - str - password
_imapserver - str - servidor IMAP
_port - str - puerto
_folder - str - carpeta a tratar
timeZone(zona)
EXCHEQUER
---------
Con el módulo EXCHEQUER pueden introducirse datos identificativos fiscales en las transacciones comerciales, así como validar
las identificaciones aportadas según reglas de cada país.
HELPERS
-------
Se admiten todas las clases o funciones que por su funcionalidad, puedan compartirse entre los restantes módulos o no tengan un fín funcional asociado a los restantes módulos.
COMMON
------
Proporciona listas de valores universales para todos los módulos.
FPDF
------
Producción de documentos en formato PDF. Este módulo es una actualización del original FPDF versión 1.7.1 en el que se han incluído EAN13, UPC_A y funciones auxiliares para producir
códigos de barras no incluídos en la versión previa.
VERSIONES
---------
Las versiones estables se indicarán con número de versión par. Las versiones en desarrollo y que incorporen características experimentales se numerarán con versión impar.
Ver 0.01 21/09/2012 Licencia GPLv3 - en desarrollo -
Las pruebas de desarrollo se realizan sobre un ordenador RASPBERRY PI 512Mb RAM, 1 GHz CPU y tarjeta SD de 64Gb con una evolución satisfactoria. El objetivo es desarrollar una librería simple y funcional.
El entorno hardware de desarrollo se complementa con un servidor MySQL 5 y servidor web APACHE 2 con mod_wsgi.
Ver 0.80.4 10/06/2024 Licencia GPLv3 - versión estable -
CREDITOS O COLABORACIONES
-------------------------
Cualquier desarrollo que se incorpore a un módulo o la introducción de nuevos desarrollos deben ser aprobados antes de formar parte de la libreria, debiendo respetar la licencia GPLv3. El reconocimiento de los desarrolladores que colaboren a mejorar la librería se incorporará en la cabecera 'CREDITS' de los módulos afectados por sus desarrollos.
Raw data
{
"_id": null,
"home_page": "https://pythonhosted.org/pymetrick/",
"name": "pymetrick",
"maintainer": "Fco. Javier Tamarit V",
"docs_url": null,
"requires_python": null,
"maintainer_email": "pymetrick@pymetrick.org",
"keywords": null,
"author": "Fco. Javier Tamarit V",
"author_email": "javtamvi@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/3d/c0/bf477f9794da387c971665027669dfe673d5bc91fa93fc583c4312a50f69/pymetrick-0.80.4.tar.gz",
"platform": null,
"description": "\ufeffPYMETRICK\r\n=========\r\nPymetrick version 0.80.4\r\n\r\nMini marco de desarrollo basado en Python 3.11+ ( TODO EN UNO ), al disponer de todos los m\u00f3dulos necesarios para cualquier desarrollo web (templates, session/cookies, routing de solicitudes, gesti\u00f3n MySQL y SQLite, rst - reStructuredText, identificaci\u00f3n de conexiones, tratamiento de imagenes, tratamiento de correos,...etc) permite prescindir de librerias ajenas a las librer\u00edas est\u00e1ndar de PYTHON, aunque el uso de librer\u00edas externas no se excluye completamente.\r\n\r\nSe aceptan contribuciones de codigo que permitan la adaptaci\u00f3n a desarrollos empresariales, con igual licencia que PYMETRICK.\r\n\r\n\r\nINDICE DE MODULOS\r\n-----------------\r\n\r\n- IMAGE o c\u00f3mo gestionar imagenes\r\n- SQLDB o c\u00f3mo gestionar BB.DD. (mariaDB)\r\n- MAIL tratamiento de correo\r\n- EXCHEQUER tratamiento fiscal e identificaci\u00f3n (NIF/CIF/NIE/VAT) y Registro de Operadores Intracomunitarios\r\n- HELPERS o gesti\u00f3n de utilidades universales de uso com\u00fan\r\n- RST o reStructuredText gestiona el formato de textos convirtiendolo en html\r\n- COMMON o d\u00f3nde identificar valores universales\r\n- FPDF generaci\u00f3n de documentos PDF ( versi\u00f3n de pyFPDF con incorporaciones de pymetrick )\r\n- ISSUE formatos comerciales como facturas, tickets (PDF y ESC/POS), etiquetas de almac\u00e9n,...\r\n- BUCKET gestiona OBJECT STORAGE o servicios compatibles con AWS S3\r\n\r\nIMAGE\r\n-----\r\n\r\nEste m\u00f3dulo permite la adaptaci\u00f3n o manipulaci\u00f3n de las im\u00e1genes a cualquier necesidad, desde el peso de las im\u00e1genes hasta su formato.\r\n\r\nImportar Image:\r\n\r\nfrom pymetrick.image import *\r\n\r\nUtilidades con imagenes :\r\n image_size(__path__) Comprueba las dimensiones de la imagen.\r\n\r\n image_resize(__path__,__factor__=1,__resized_path__='') Convierte fichero de imagen a un tama\u00f1o diferente, ademas es posible cambiar el tipo de imagen de png, jpeg o gif a otro cuando se renombra el fichero de imagen resultante.\r\n\r\n strip_metadata(image_path,newImage=None) Elimina los metadatos EXIF de una imagen, guardando en el mismo nombre de imagen o bien en otra imagen nueva.\r\n\r\n image2html('logo.png') Devuelve una imagen en base64 como un string de forma que se pueda utilizar como imagen embebida en css o html.\r\n\r\n image2base64('logo.png') Devuelve una imagen en base64 extendido ( file_name$string_base64).\r\n\r\n image_download('http://nadadenada.com/coche.png', '/img/coche_2.png') Descarga una imagen desde una url con <urllib> y permite renombrar el fichero.\r\n\r\n image_checksums('logo.png') Devuelve un hash como un string que identifica la imagen para ser comparada con otras imagenes.\r\n\r\n image_compare(file1,file2) Devuelve 0 si las imagenes comparadas son iguales, en caso contrario devolvera un valor distinto de 0.\r\n \r\n image_qrcode('/home/content.png'logo.png') Devuelve datos/informacion en formato qrcode como imagen png\r\n\r\nSQLDB \r\n--------\r\n\r\nGesti\u00f3n de la conexi\u00f3n con BB.DD. como MySQL (MYSQL.CONNECTOR), PostgreSQL (PSYCOPG2) y SQLite.\r\n\r\nIncluye funciones dirigidas a conexi\u00f3n, reconexi\u00f3n, as\u00ed como la creaci\u00f3n, modificaci\u00f3n, eliminaci\u00f3n y utilidades de BB.DD.,tablas, indices,...\r\n\r\nSESSION\r\n-------\r\n\r\nIdentifica las conexiones de clientes mediante JSON WEB TOKENS stateless authentication, que se intercambian entre el \r\nservidor WEB y el cliente a trav\u00e9s de :\r\n HTTP_COOKIE\r\n HTTP_X_AUTHORIZATION or X_REQUEST_WITH\r\n HTTP_HOST\r\n HTTP_CLIENT_IP o HTTP_X_FORWARDED_FOR o REMOTE_ADDR\r\n\r\nIncorpora tambi\u00e9n funciones de encriptaci\u00f3n y generaci\u00f3n de passwords\r\n\r\nMAIL\r\n-----\r\n\r\nCon el m\u00f3dulo MAIL se gestiona el correo electr\u00f3nico. Condici\u00f3n necesaria es disponer de un servidor SMTP y POP3 o IMAP\r\n\r\nPar\u00e1metros necesarios : \r\n\r\n sendMail() Enviar mail e incorporar ficheros adjuntos si fuera necesario\r\n _sender - str - enviado desde\r\n _to - list - enviar a\r\n _cc - list - enviar copias\r\n _bcc - list - enviar copias ocultas\r\n _subject - str - asunto\r\n _text - str - text/plain del mensaje\r\n _html - str - text/html del mensaje\r\n _user - str - usuario\r\n _password - str - password\r\n _smtpserver - str - servidor smtp\r\n _smtp_port - str - puerto\r\n _imapserver - str - servidor imap ( crea correo en carpeta SENT )\r\n _imap_port - str - puerto\r\n _files - list - ficheros adjuntos\r\n _output - str - el contenido del mensaje se grabara como un fichero\r\n\r\n getMail() Recepci\u00f3n de mail desde POP3|IMAP\r\n _user - str - usuario\r\n _password - str - password\r\n _imapserver - str - servidor IMAP\r\n _pop3server - str - servidor POP3\r\n _port - str - puerto\r\n _criteria - str - \r\n ALL - devuelve todos los mensajes que coinciden con el resto del criterio\r\n ANSWERED - coincide con los mensajes con la bandera \\\\ANSWERED establecida\r\n BCC \"cadena\" - coincide con los mensajes con \"cadena\" en el campo Bcc:\r\n BEFORE \"fecha\" - coincide con los mensajes con Date: antes de \"fecha\"\r\n BODY \"cadena\" - coincide con los mensajes con \"cadena\" en el cuerpo del mensaje\r\n CC \"cadena\" - coincide con los mensajes con \"cadena\" en el campo Cc:\r\n DELETED - coincide con los mensajes borrados\r\n FLAGGED - coincide con los mensajes con la bandera \\\\FLAGGED establecida (algunas veces referidos como Importante o Urgente)\r\n FROM \"cadena\" - coincide con los mensajes con \"cadena\" en el campo From:\r\n KEYWORD \"cadena\" - coincide con los mensajes con \"cadena\" como palabra clave\r\n NEW - coincide con los mensajes nuevos\r\n OLD - coincide con los mensajes antiguos\r\n ON \"fecha\" - coincide con los mensajes con Date: coincidiendo con \"fecha\"\r\n RECENT - coincide con los mensajes con la bandera \\\\RECENT establecida\r\n SEEN - coincide con los mensajes que han sido le\u00eddos (la bandera \\\\SEEN esta estabecido)\r\n SINCE \"fecha\" - coincide con los mensajes con Date: despues de \"fecha\"\r\n SUBJECT \"cadena\" - coincide con los mensajes con \"cadena\" en Subject:\r\n TEXT \"cadena\" - coincide con los mensajes con el texto \"cadena\"\r\n TO \"cadena\" - coincide con los mensajes con \"cadena\" en To:\r\n UNANSWERED - coincide con los mensajes que no han sido respondidos\r\n UNDELETED - coincide con los mensajes que no est\u00e1n eliminados\r\n UNFLAGGED - coincide con los mensajes que no tienen bandera\r\n UNKEYWORD \"cadena\" - coincide con los mensajes que no tienen la palabra clave \"cadena\"\r\n UNSEEN - coincide con los mensajes que aun no han sido leidos\r\n _outputdir - str -\r\n\r\n deleteIMAP() Eliminar mail de servidor IMAP\r\n _user - str - usuario\r\n _password - str - password\r\n _imapserver - str - servidor IMAP\r\n _port - str - puerto\r\n _folder - str - carpeta a tratar\r\n\r\n timeZone(zona)\r\n\r\nEXCHEQUER\r\n---------\r\n\r\nCon el m\u00f3dulo EXCHEQUER pueden introducirse datos identificativos fiscales en las transacciones comerciales, as\u00ed como validar\r\nlas identificaciones aportadas seg\u00fan reglas de cada pa\u00eds.\r\n\r\nHELPERS\r\n-------\r\n\r\nSe admiten todas las clases o funciones que por su funcionalidad, puedan compartirse entre los restantes m\u00f3dulos o no tengan un f\u00edn funcional asociado a los restantes m\u00f3dulos.\r\n\r\n \r\nCOMMON\r\n------\r\n\r\nProporciona listas de valores universales para todos los m\u00f3dulos.\r\n\r\nFPDF\r\n------\r\n\r\nProducci\u00f3n de documentos en formato PDF. Este m\u00f3dulo es una actualizaci\u00f3n del original FPDF versi\u00f3n 1.7.1 en el que se han inclu\u00eddo EAN13, UPC_A y funciones auxiliares para producir \r\nc\u00f3digos de barras no inclu\u00eddos en la versi\u00f3n previa. \r\n\r\nVERSIONES\r\n---------\r\n\r\nLas versiones estables se indicar\u00e1n con n\u00famero de versi\u00f3n par. Las versiones en desarrollo y que incorporen caracter\u00edsticas experimentales se numerar\u00e1n con versi\u00f3n impar.\r\n\r\n\r\nVer 0.01 21/09/2012 Licencia GPLv3 - en desarrollo -\r\n Las pruebas de desarrollo se realizan sobre un ordenador RASPBERRY PI 512Mb RAM, 1 GHz CPU y tarjeta SD de 64Gb con una evoluci\u00f3n satisfactoria. El objetivo es desarrollar una librer\u00eda simple y funcional.\r\n El entorno hardware de desarrollo se complementa con un servidor MySQL 5 y servidor web APACHE 2 con mod_wsgi.\r\n\r\nVer 0.80.4 10/06/2024 Licencia GPLv3 - versi\u00f3n estable -\r\n\r\nCREDITOS O COLABORACIONES\r\n-------------------------\r\n\r\nCualquier desarrollo que se incorpore a un m\u00f3dulo o la introducci\u00f3n de nuevos desarrollos deben ser aprobados antes de formar parte de la libreria, debiendo respetar la licencia GPLv3. El reconocimiento de los desarrolladores que colaboren a mejorar la librer\u00eda se incorporar\u00e1 en la cabecera 'CREDITS' de los m\u00f3dulos afectados por sus desarrollos.\r\n",
"bugtrack_url": null,
"license": "GNU/GPLv3",
"summary": "Lightweight web framework",
"version": "0.80.4",
"project_urls": {
"Homepage": "https://pythonhosted.org/pymetrick/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "486dde1c9cd85828b8896ac1d00349526400ad099ab061770a893694b07ca585",
"md5": "05dffcc4e3b2bbe5c293034cd8cc8f4c",
"sha256": "96dd3c0d6084ce85acb44e49c8b4c94337eeb68839c1f562f7e2e7e70f9db59a"
},
"downloads": -1,
"filename": "pymetrick-0.80.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "05dffcc4e3b2bbe5c293034cd8cc8f4c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 199228,
"upload_time": "2024-12-17T18:57:44",
"upload_time_iso_8601": "2024-12-17T18:57:44.289589Z",
"url": "https://files.pythonhosted.org/packages/48/6d/de1c9cd85828b8896ac1d00349526400ad099ab061770a893694b07ca585/pymetrick-0.80.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3dc0bf477f9794da387c971665027669dfe673d5bc91fa93fc583c4312a50f69",
"md5": "309cd20117d1393807f39670b7fd349e",
"sha256": "86e43e84da6744ce18343fe9e766954e26225078a0771836a19133a50cf2c7f2"
},
"downloads": -1,
"filename": "pymetrick-0.80.4.tar.gz",
"has_sig": false,
"md5_digest": "309cd20117d1393807f39670b7fd349e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 182850,
"upload_time": "2024-12-17T18:57:46",
"upload_time_iso_8601": "2024-12-17T18:57:46.047132Z",
"url": "https://files.pythonhosted.org/packages/3d/c0/bf477f9794da387c971665027669dfe673d5bc91fa93fc583c4312a50f69/pymetrick-0.80.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-17 18:57:46",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "pymetrick"
}