PythonAnywhere
PythonAnywhere fue desarrollado por el equipo de Resolver Systems, una empresa británica fundada por Giles Thomas y Robert Smithson. Resolver Systems creó inicialmente un producto llamado Resolver One, una hoja de cálculo basada en Python.
Más tarde, el equipo lanzó PythonAnywhere en 2012, proporcionando un entorno basado en la nube para el desarrollo y la ejecución de código Python.

Hoy en día, PythonAnywhere es una plataforma en la nube que permite a los desarrolladores alojar, ejecutar y programar aplicaciones web mediante diferentes tecnologías, como Django, Flask, Pyramid, entre otros. El entorno de desarrollo de PythonAnywhere es accesible a través de un navegador web, y nos brinda un editor de código, una consola interactiva y un entorno de ejecución para nuestras aplicaciones.
Configurar un proyecto Django
Lo primero que debemos hacer es crear una cuenta en PythonAnywhere, si es que no contamos con una.
Para ello, debemos acceder a la página principal de PythonAnywhere, y hacer clic en el botón “Log in” para iniciar sesión o en el botón “Pricing & Signup” para crear una nueva cuenta.

Una vez que hayamos iniciado sesión, veremos la pantalla principal de PythonAnywhere, donde encontraremos un panel de control con diferentes opciones y herramientas.

En este punto tenemos varias alternativas para comenzar a trabajar, pero recomendamos dirigirnos a la sección “Web apps” y hacer clic en el botón “Open Web tab” para acceder al entorno de desarrollo de aplicaciones web.
Desde aquí, podremos crear una nueva aplicación web haciendo clic en el botón “Add a new web app”. Luego, seleccionamos el tipo de aplicación que deseamos crear (Django, Flask, Bottle, etc.).
Si bien trabajaremos con un proyecto Django en este taller, la última versión de Django disponible
en PythonAnywhere es Django 4.0.6, por lo que es posible que algunas características de versiones
más recientes no estén disponibles. Por este motivo, elegiremos la opción “Manual configuration”
para configurar nuestro proyecto Django y seleccionaremos la versión de Python que deseamos utilizar.
Con la aplicación web creada en la plataforma, deberemos configurar el directorio de trabajo y la ruta de acceso a nuestro proyecto Django. Para ello, debemos dirigirnos a la sección “Code” y seleccionar la opción “Working directory” para establecer la ruta de acceso a nuestro proyecto.

Con la ruta definida, debemos subir nuestro proyecto Django a PythonAnywhere. En este taller utilizaremos un repositorio público de GitHub para clonar el proyecto.
Para ello, accedemos a la consola de PythonAnywhere, nos situamos en el directorio adecuado y ejecutamos los siguientes comandos:
1git clone <url_del_repositorio>Luego, debemos configurar el entorno virtual de PythonAnywhere para instalar las dependencias de nuestro proyecto Django. Para ello, accedemos a la consola de PythonAnywhere y ejecutamos los siguientes comandos:
1python -m venv <nombre_del_entorno_virtual>2pip install -r requirements.txtLuego de instalar el entorno virtual, procedemos a agregar la ruta de acceso al entorno virtual en la sección “Virtualenv” de la aplicación web que estamos configurando.

Finalmente, debemos configurar el archivo de configuración wsgi.py de PythonAnywhere para
indicarle cómo ejecutar nuestra aplicación Django. Para ello, accedemos a la sección “Code” y
modificamos el archivo wsgi.py con el siguiente contenido:
1import os2import sys3
4path = '/home/luisap/<nombre_del_directorio_del_proyecto>'5if path not in sys.path:6 sys.path.append(path)7
8os.environ['DJANGO_SETTINGS_MODULE'] = '<nombre_del_proyecto>.settings'9
10from django.core.wsgi import get_wsgi_application11application = get_wsgi_application()Con estos pasos, hemos configurado nuestro proyecto Django en PythonAnywhere y podemos acceder a nuestra aplicación web a través de la URL proporcionada por la plataforma.