Тайный Санта из формы Google
Эта статья является продолжением моей предыдущей статьи под названием « Позвольте мне помочь вам организовать вашего лучшего Тайного Санты за всю историю прошлого года». Если вы еще не читали его, советую сделать это, чтобы лучше понять/оценить то, что здесь.
Введение
В моей предыдущей статье я объяснил, как создать связный граф атрибуций подарков внутри людей. Это при обработке списка запрещенных назначений, т.е. где у каждого человека есть список имен людей, которым он/она не должен дарить подарки.
В этой статье я хотел бы поделиться с вами двумя улучшениями:
- Попросите людей заполнить форму Google вместо того, чтобы писать почтовые адреса самостоятельно.
- Продолжайте использовать Gmail для отправки писем, даже несмотря на то, что в мае 2022 года Google решил удалить параметр «Доступ к менее безопасным приложениям» .
Создайте форму Google
Цель этой формы — собрать имена и адреса электронной почты людей, которые хотят принять участие в Тайном Санте. Мы можем добавить вопрос о команде , чтобы запретить назначение подарков между членами одной группы.
Опция «Собирать адреса электронной почты» позволяет убедиться, что вы не допустили опечаток и что почта успешно дойдет до адресата.
NB. Если ваша компания использует Gmail для электронной почты сотрудников, а вы организуете Тайного Санту на работе, можно заставить людей использовать электронную почту своей компании при ответе на форму. В этом случае электронная почта будет собираться автоматически, в то время как в противном случае пользователю, похоже, придется заполнять ее вручную.
Разобрать форму Google
Для начала мы можем получить все ответы, нажав «Загрузить ответы (.csv)» .
Хитрость здесь заключается в том, чтобы просто сгруппировать результаты по их командам, а затем переименовать столбцы с полями, требуемыми классом PlayerInfo(см. мою предыдущую статью ).
Наконец, мы применяем правила исключения внутри каждой команды и выводим соответствующий список файлов PlayerInfo.
Автоматизация электронной почты
К сожалению, в мае 2022 года Google решил удалить параметр «Менее безопасный доступ к приложениям». Таким образом, мы больше не можем входить в систему и отправлять электронные письма из нашей учетной записи Gmail, smtplibкак описано в предыдущей статье.
Обойти это можно, включив двухэтапную аутентификацию и сгенерировав токены доступа в «Пароли приложений» . Он даст вам 16-буквенный пароль, состоящий из четырех 4-буквенных токенов, которые вам придется использовать вместо обычного пароля при входе в систему с smtplib.
Надеюсь, вам понравилось читать эту статью, и она дала вам больше информации о том, как организовать своего собственного Тайного Санту!
Не стесняйтесь использовать мою реализацию Secret Santa. Он доступен в репозитории GitHub:

![В любом случае, что такое связанный список? [Часть 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































