Python Academy
48.6K subscribers
1.13K photos
2 videos
386 links
Python Academy — один канал вместо тысячи учебников

Чат канала: @python_academy_chat

Сотрудничество: @zubar89

Канал включён в перечень РКН: https://rkn.link/TVu
Download Telegram
Работа с данными в Python используя Pydantic

Pydantic - это библиотека для Python, предназначенная для парсинга и валидации данных. Она использует статическую типизацию для атрибутов классов, что облегчает проверку данных при создании объектов.

Этот инструмент особенно полезен при работе с JSON: он автоматизирует проверку структуры, необходимых полей и значений.

Pydantic поддерживает не только стандартные типы данных, но и специализированные, такие как email, URL-адреса и номера платежных карт.

Для более подробного примера и документации можно обратиться сюда.

#python #pydantic
2👍1
Отправка электронных писем через SMTP в Python

SMTP (Simple Mail Transfer Protocol) - это протокол, позволяющий отправлять электронные письма. В стандартной библиотеке Python доступен пакет smtplib, который реализует функциональность SMTP.

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

Авторизация на сервере осуществляется с использованием метода login, в который передаются логин и пароль пользователя.

Для отправки электронных писем используется метод sendmail, который принимает адрес отправителя, адрес получателя и текст сообщения. Важно отметить, что в конце написаного кода следует закрыть соединение с сервером с помощью метода quit().

Однако стоит учесть, что некоторые почтовые сервисы могут иметь ограничения и требования к безопасности. Например, для работы с Gmail может потребоваться включить поддержку "доступа к ненадежным приложениям" и настроить двухфакторную аутентификацию.

Пример использования smtplib для отправки электронного письма:
import smtplib

smtp_server = "smtp.example.com"
smtp_port = 465 # SSL-порт
smtp_username = "your_username"
smtp_password = "your_password"

server = smtplib.SMTP_SSL(smtp_server, smtp_port)

server.login(smtp_username, smtp_password)

from_email = "your_email@example.com"
to_email = "recipient@example.com"
subject = "Тема письма"
message = "Текст письма"

server.sendmail(from_email, to_email, f"Subject: {subject}\n\n{message}")

server.quit()


#python #smtp #smtplib
1