И сэкономить много времени для ручной работы.

вступление

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

Ответ, конечно же, «Да!». По крайней мере, для многих из нас.

Как Data Engineer, я большой поклонник автоматизации. Вот почему я здесь, чтобы поговорить об автоматизации вашей игры с электронной почтой с помощью Python.

Если вы читаете эту статью, вы, вероятно, уже понимаете преимущества автоматической отправки электронной почты.

Но на всякий случай, если вам нужно освежить в памяти, вот несколько причин, почему автоматизация с помощью Python — это то, что вам нужно:

  • efficiency (попрощайтесь с этими бесконечными сеансами вырезания и вставки);
  • accuracy (больше никаких досадных опечаток!);
  • personalization (потому что обезличенные электронные письма не подходят);
  • scalability (больше никаких бесконечных часов, потраченных на отправку писем по одному).

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

Только не спамьте!

Серьезно, это просто не круто.

Если вы один из тех людей, которые всегда ищут способы распространения спама (или любой другой формы фишинга), то эта статья НЕ для вас.

Я серьезно. Не тратьте время на чтение.

Я серьезно, малыш. Двигайтесь вперед.

Но если вы все еще здесь, то я могу с уверенностью предположить, что вы ответственный профессионал с мышлением роста и жаждой знаний.

И угадай что? У меня есть как раз то, что тебе нужно!

Однако я должен прояснить одну вещь: это руководство предназначено исключительно для образовательных целей. Если вы решите присоединиться к «темной стороне» и использовать эти знания не по назначению, извините, но я не могу взять на себя ответственность за это.

Я не несу никакой ответственности за вас и всех причастных, а также за какие-либо убытки или забаненные аккаунты от рассылки спама. Используйте свои знания ответственно и с умом.

Практичность

Части электронной почты

Каковы ключевые элементы электронного письма?

Ну, как минимум, вам нужны три вещи:

  • sender (это мы!);
  • recipient (как и все эти подписчики, друзья и заинтересованные стороны);
  • email credentials (вы знаете, такие вещи, как пароль, сервер и порт).

Но зачем останавливаться на достигнутом?

Чтобы сделать электронное письмо более интересным, вы, вероятно, захотите включить в него:

  • запоминающаяся линия subject;
  • участие body text;
  • может даже attachment или два

питон

Когда дело доходит до автоматизации отправки электронной почты с помощью Python, у вас есть несколько вариантов.

Например, вы можете использовать пакеты smtplib или yagmail.

У каждого есть свой набор преимуществ и недостатков, но для целей этого руководства мы будем придерживаться стандартного модуля smtplib.

Почему?

Потому что он уже встроен в Python, что делает его очень простым в использовании.

SMTP

Теперь давайте кратко поговорим о том, что такое SMTP (Simple Mail Transfer Protocol).

По своей сути SMTP — это протокол связи, который используется для отправки сообщений электронной почты между серверами. Когда вы используете модуль smtplib в Python, вы, по сути, используете SMTP для связи с почтовым сервером и отправки сообщений.

Ниже, в части 3, я расскажу об этом подробнее.

В следующем разделе мы углубимся в мой скрипт Python и подробно рассмотрим каждый шаг.

Звучит неплохо?

Давайте погрузимся!

Скрипт Python

Часть 1

Как обычно, начнем с импорта библиотек:

Часть 2

Затем мы определяем все обязательные и необязательные части электронного письма, включая адреса отправителя и получателя, тело и заголовок электронного письма и т. д.

Часть 3

Теория SMTP-серверов

Итак, что это такое?

Если вы хотите отправлять электронные письма, вам нужно понимать, как работают эти серверы.

По сути, SMTP-сервер — это то, что позволяет вам автоматически отправлять все эти замечательные электронные письма.

Теперь в этом руководстве мы будем использовать старый добрый SMTP-сервер Gmail. Вы найдете ее по адресу smtp.gmail.com, и на самом деле это стандартная библиотека Python, которая довольно удобна.

Самое интересное: даже если вы используете другие почтовые клиенты, такие как Outlook или Thunderbird, вы все равно можете использовать свою учетную запись Gmail для отправки электронной почты через этот сервер.

Но вот в чем загвоздка: количество писем, которые вы можете отправлять в день, ограничено. Если вы используете бесплатный план, вы смотрите на ограничение в 500 писем в день. Однако этого должно быть более чем достаточно для начала!

Однако, если вы серьезно расширяете свою аудиторию и вам нужно отправлять больше писем, вы можете подписаться на платный план и отправлять до 2000 писем в день. Подробнее об этом в блоге, например.

Это основы SMTP-серверов.

Но хватит теории, давайте перейдем к практической части и посмотрим, как использовать Python для автоматизации нашей игры с отправкой электронной почты.

Скрипт

Сначала определите реквизиты SMTP, такие как имя сервера, порт подключения и т. д.

Затем используйте свои учетные данные. Это сложная часть, и она может не сработать сразу (читайте ниже, как устранить неполадки).

Наконец, в последней части мы отправляем это красивое электронное письмо.

Часть 4

Это, вероятно, самая простая часть этого рабочего процесса. Просто соберите все в одном месте и sendemail через SMTP-сервер connection!

Тестирование и устранение неполадок

Следуя нашему руководству и тестируя собственный рабочий процесс электронной почты, вы можете столкнуться с надоедливым сообщением об ошибке, которое выглядит примерно так:

“smtpauthenticationerror: (535, b’5.7.8 username and password not accepted ... bla-bla-bla ...”.

Да, я знаю, не совсем весело иметь дело с ошибками аутентификации.

Но не волнуйтесь — есть простое решение, которое вернет вас в нужное русло в кратчайшие сроки.

Вот в чем дело:

Если вы включили двухфакторную аутентификацию в своей учетной записи Google (как и должно быть в целях безопасности!), вам нужно будет выполнить быстрый и простой обходной путь, чтобы использовать SMTP-сервер в вашем скрипте Python.

Прежде всего, перейдите на страницу своей учетной записи Google и перейдите к «Безопасность» и «Вход в Google». Убедитесь, что вы включили двухэтапную аутентификацию — поверьте мне, вам нужно включить эту функцию.

Как только об этом позаботятся, прокрутите вниз до «Пароль приложения» и создайте новый для доступа к почте.

Вы получите 16-буквенный пароль для своего приложения — обязательно скопируйте его в надежное место! Это пароль, который вам нужно будет использовать в вашем скрипте Python, а НЕ ваш фактический пароль учетной записи Gmail.

И вуаля!

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

Если вы не можете туда попасть или что-то не работает, напишите в разделе комментариев, и я вам помогу. Никаких обещаний, но я сделаю все возможное.

Полный код

Наслаждайтесь своей автоматизацией!

Краткое содержание

Спасибо, что дочитали до конца и поздравляю!

Вы овладели искусством автоматизации отправки электронной почты с помощью Python!

Этот проект — отличное введение в автоматизацию для всех, кто заинтересован в оптимизации утомительных и подверженных ошибкам задач.

Но это еще не все — всегда есть возможность поднять свои навыки на новый уровень. Вот несколько идей, которые помогут вам поднять автоматизацию электронной почты на новый уровень:

  • Создавайте динамические шаблоны электронной почты, которые персонализируют сообщения с помощью переменных. Вы можете использовать f-строки или заполнители, чтобы сделать ваши шаблоны гибкими и настраиваемыми.
  • Создайте функцию списка рассылки, которая извлекает адреса электронной почты из файла или базы данных, что позволяет отправлять информационные бюллетени или обновления большой группе людей.
  • Избавьтесь от ручной работы, запланировав отправку электронной почты с помощью серверного инструмента, такого как cron в системах UNIX. Отправка по расписанию позволяет автоматизировать весь процесс, освобождая время для более важных задач.

Если вы хотите узнать больше об использовании инструментов автоматизации для оптимизации ваших проектов, следите за обновлениями для получения дополнительных руководств и полных сценариев Python.

А для получения пошагового руководства по планированию отправки электронной почты ознакомьтесь с этой статьей — она обязательно поднимет вашу игру по автоматизации электронной почты на новый уровень!



В конце концов, автоматизация подобна свободе.

Чем больше задач мы можем автоматизировать, тем больше времени у нас остается на то, чтобы заниматься любимым делом, проводить время с близкими или просто отдыхать и заряжаться энергией.

Спасибо, что прочитали мою статью.

Вам интересно узнать о развивающейся области Prompt Engineering? Хватай мою новую электронную книгу! Вы узнаете и освоите все, от фундаментальных концепций до практических советов и реальных приложений. Кроме того, вы получите бонус в виде 300 подсказок и несколько бесплатных ресурсов, которые помогут вам начать свое путешествие с помощью ИИ. Со всей этой ценностью, упакованной в одну электронную книгу, какова цена? Стоимость чашки кофе! Не упустите возможность поднять свои навыки на новый уровень!



Контакт

Давайте подключимся. Мой профиль LinkedIn. Я хотел бы расширить наши профессиональные сети!

Если вам понравился этот пост, рассмотрите возможность подписаться. Вы получите доступ к неограниченному контенту, который научит вас кодировать, автоматизировать и зарабатывать деньги с помощью инвестиций и предпринимательства — по цене меньше, чем стоимость чашки кофе!

Подпишитесь на DDIntel Здесь.

Посетите наш сайт здесь: https://www.datadriveninvestor.com

Присоединяйтесь к нашей сети здесь: https://datadriveninvestor.com/collaborate