Как автоматизировать создание дипломов / сертификатов

Как автоматизировать создание дипломов / сертификатов

Нашёл две темы на vc.ru про автоматизацию этого дела, не одна из них мне не подошла. Хотелось сделать свой мини - сервис.

Задача:
Детский кружок по выпуску выдает сертификаты об окончании , нужно было вручную на каждом сертификате прописывать ФИО. Так как существует шесть программ обучения, четыре из которых рассчитаны на 36 часов, две на 144, такая задача систематически появляется на пути и забирала много человеко-часов.

Решение:
Создание Телеграм бота с интеграцией Гугл таблицы, для быстрого заполнения данных с последующей выгрузкой на Яндекс Диск и отправкой пользователю.

Почему не использовать готовое решение ?

Банально, организация является бюджетной, а платить из своего кармана за каждый сертификат не хотелось.

Реализация решения:

Для разработки был выбран язык python, так как считаю его идеальным для такой задачи. Там есть все необходимые мне библиотеки.

Используемые библиотеки:

pandas - обработка таблицы
yadisk - для загрузки и получения ссылки на Яндекс Диск
pillow - работа с изображением
telebot - для создания Телеграм бота (для данной задачи и в таких условиях вполне подходит ( посчитал лишним использовать aiogram ).

Алгоритм был простой:

Администратор заполняет Гугл таблицу ( список поступающих есть всегда в текстовом виде и с ним можно спокойно работать ). То есть нужно просто перенести ФИО в таблицу. Затем осуществляем переход в Телеграм, бот предлагает выбрать группу , берет данные из созданной нами таблицы, генерирует сертификаты и загружает их на Яндекс Диск в папку. Затем просто отдает ссылку на скачивание.


Я не стал использовать API Гугла, а просто прогрузил табличку для pandas простым способом :

import pandas as
pdsheet_id = “id таблицы"
sheet_name = “название вашего листа”
url = f”https://docs.google.com/spreadsheets/d/{sheet_id}/gviz/tq?tqx=out:csv&sheet={sheet_name}"
pd.read_csv(url)

Затем создал папку на Яндекс диске.
y.mkdir(f"{name_folder}")
name_folder - название папки ( запрашивается у пользователя)
y - переменная с инициализацией моего диска

Сам алгоритм создания дипломов, сохранение их и выгрузка на диск.

Переменной link присваивается ссылка, которая в последствии и отправляется администратору.

Как автоматизировать создание дипломов / сертификатов

Если тема интересна аудитории, могу доработать и выложить полный код с объяснениями. С удовольствием послушаю советы по оптимизации.

Пример обработки запроса :

Как автоматизировать создание дипломов / сертификатов
4
Начать дискуссию