Python es un lenguaje de propósito general, sirve para cualquier cosa y corre en todos los ámbitos y plataformas. Pero cuando consultamos en la web sobre Python para desarrollar sitios webs, por lo general nos recomiendan Django, un framework escrito en Python que facilita esta tarea.

Quizá te interese: Python vs Java

Sin embargo, Python permite programar en el servidor muy fácilmente. Algún tiempo atrás estaba se comentaba de mod_python, un módulo que permitía escribir python dentro del código html, como en PHP, ASP o JSP. Pero con la creciente complejidad de las aplicaciones web, esta modalidad fue cayendo en desuso y hoy es más limpio, práctico y conveniente separar el código de programación -backend- del html -frontend-.

Respecto a Python, no es necesario usar Django. Recuerda que el objetivo inicial de Django fue y es facilitar la creación de sitios web complejos. Pero existen infinidad de frameworks más livianos y sencillos que funcionan muy bien. Algunos de ellos son:

Bottle es un micro marco web WSGI rápido, simple y liviano para Python. Se distribuye como un módulo de archivo único y no tiene dependencias distintas de la Biblioteca estándar de Python. Entre sus características:

  • Enrutamiento: solicitudes de asignación de llamadas a funciones con soporte para URLs limpias y dinámicas.
  • Plantillas: motor de plantillas incorporado rápido y soporte para plantillas makojinja2 y cheetah .
  • Utilidades: acceso conveniente a datos de formularios, cargas de archivos, cookies, encabezados y otros metadatos relacionados con HTTP.
  • Servidor: servidor de desarrollo HTTP incorporado y soporte para pastefapws3bjoerngaecherrypy o cualquier otro servidor HTTP compatible con WSGI.

Quizá te interese: Python (Bottle) + MySQL: Consulta de Datos

web.py es un framework web para Python que es tan simple como poderoso. web.py está en el dominio público; puedes usarlo para cualquier propósito sin ninguna restricción.

Flask es un framework ligero de aplicación web WSGI. Está diseñado para que comenzar sea rápido y fácil, con la capacidad de escalar a aplicaciones complejas. Comenzó como un simple complemento y se ha convertido en uno de los frames de aplicaciones web de Python más populares.

CherryPy permite a los desarrolladores crear aplicaciones web de la misma manera que crearía cualquier otro programa Python orientado a objetos. Esto da como resultado un código fuente más pequeño desarrollado en menos tiempo.

Pyramid facilita la escritura de aplicaciones web. Puedes comenzar con esta aplicación web de solicitud / respuesta mínima, la clásica “hello world”. Esto puede llevarte lejos, especialmente mientras aprende. A medida que tu aplicación crece, Pyramid ofrece muchas características que hacen que escribir software complejo requiera poco esfuerzo.

Pyramid funciona en todas las versiones compatibles de Python. Las instrucciones de instalación ayudan a poner en funcionamiento Pyramid. El rápido tutorial de Pyramid nos lleva paso a paso a través de la escritura de una aplicación de archivo único, formularios, integración de bases de datos y autenticación, mucho más.

Artículo recomendado: Tecnologías que debes aprender ya!

Finalmente

Recuerda que los frameworks lo único que hacen es ahorrarnos trabajo ya que contienen código escrito por alguien mas.

Sin embargo también recuerda que si no usas un framework, vas a tener que escribir tooodo el código desde cero. Por lo tanto es probable que te tardes mucho más tiempo. Como quien dice: “¡no reinventes la rueda!”.

Más adelante seguiremos comentando sobre estos framework para casos prácticos.