Generador de certificados para los asistentes a las actividades del Club de Algoritmia de la Universidad de Sevilla.
-
Descarga el repositorio. Puedes hacerlo como zip desde la página de GitHub o directamente utilizando Git:
git clone git@github.com:algoritmiaUS/certificates-generator.git. -
Antes de empezar tienes que instalar resvg en tu sistema. Se trata de una librería desarrollada en Rust que permite convertir imágenes SVG en archivos PNG.
Note
Si tu ordenador está poseído por Windows necesitarás descargar el archivo .exe correspondiente y asegurarte de guardarlo en un directorio que aparezca en la variable PATH.
-
Instala Python 3 (si es que no lo tienes ya). Este código ha sido probado para Python 3.12.1.
-
Instala las dependencias de Python:
pip install -r requirements.txt.
- Crea un archivo llamado
.enven la raíz del proyecto para definir la configuración. Puedes utilizar el archivo .env.sample como referencia. - Preparación del archivo CSV. Ambos scripts de este proyecto (el generador y el que envía los correos) leen de un único archivo CSV (por defecto
participants.csv), que debe incluir una línea de cabeceras con los siguientes campos:position: Indica si la persona ha ganado. Usa1,2o3para las medallas de oro, plata o bronce. Deja este campo vacío o usa0para participantes regulares.name: Nombre del destinatario que aparecerá en el certificado.email: Correo al que se le enviará el resultado.
- Rellena el archivo configurado en tu
.envcon los datos de los participantes (como se indica arriba). - Introduce el siguiente comando en la terminal:
python ./create_certificates.py. - Ya tienes los resultados en el directorio indicado (por defecto
./out/)!
Para ver otras opciones ejecuta python ./create_certificates.py --help.
- Ve a Google Cloud Console y crea un nuevo proyecto (o usa uno existente).
- Habilita la Gmail API en APIs & Services > Library.
- Ve a APIs & Services > Credentials y crea unas credenciales de tipo OAuth 2.0 Client ID (Application type: Desktop app).
- Descarga el archivo JSON resultante y guárdalo en la raíz del repositorio como
auth.json. - La primera vez que ejecutes el script se abrirá el navegador para que autorices el acceso a la cuenta de Gmail. Se generará automáticamente un archivo
token_gmail_v1.picklecon las credenciales ya autorizadas.
- Asegúrate de tener el archivo
.envcompleto y tu archivo CSV listo. - Opcional: Modifica cualquier texto de los correos (
SUBJECT,MESSAGE) si necesitas cambiarlos para diferentes envíos. - Ejecuta
python ./send_emails.py.
Al realizar contribuciones a este proyecto, aceptas automáticamente que tu código se publique bajo los términos de la Licencia MIT.