вопрос с почтой подтверждения (на отправку кода на свой личный сайт)

Добро пожаловать!

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

Зарегистрироваться!
Пользователь
Регистрация
13 Июн 2025
Сообщения
24
как сделать на своем сайте личную почту(бесллатную), пофик что с лимитами, дайте пожалуйста какой нибудь примерный код типа для отправки кода на почту и создания самой может там через каких то сервисов не знаю (у меня свой сайт)


Суть(короткая понятная:

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


Заранее благодарен, если поможете, очень срочно:)
 
Alt Linux - The best!
Активный
Регистрация
17 Июн 2025
Сообщения
362
Для начала тебе надо зарегать почту где есть SMTP, лучше её приобрести, допустим на reg.ru или бесплатная на mailgun

Пример кода отправки:
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

def send_email(sender_email, sender_password, recipient_email, subject, body):
    """
    Args:
        sender_email: Email отправителя.
        sender_password: Пароль от почты отправителя.
        recipient_email: Email получателя.
        subject: Тема письма.
        body: Тело письма.
    """
    message = MIMEMultipart()
    message['From'] = sender_email
    message['To'] = recipient_email
    message['Subject'] = subject
    message.attach(MIMEText(body, 'plain'))

    try:
        with smtplib.SMTP('smtp.example.com', 587) as server:  # Заменить на SMTP-сервере
            server.starttls()
            server.login(sender_email, sender_password)
            server.send_message(message)
        print("Email успешно отправлен!")
    except Exception as e:
        print(f"Ошибка при отправке email: {e}")



Пример для генерации кода подтверждения:
import random
import string

def generate_confirmation_code(length=6):
    characters = string.ascii_letters + string.digits
    return ''.join(random.choice(characters) for _ in range(length))

p.s. код не мой
 
Пользователь
Регистрация
17 Авг 2022
Сообщения
30
как сделать на своем сайте личную почту(бесллатную), пофик что с лимитами, дайте пожалуйста какой нибудь примерный код типа для отправки кода на почту и создания самой может там через каких то сервисов не знаю (у меня свой сайт)


Суть(короткая понятная:

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


Заранее благодарен, если поможете, очень срочно:)

Gmail SMTP самый простой способ​


python:
import smtplib
from email.mime.text import MIMEText
from flask import Flask, request

app = Flask(__name__)

def send_email(to_email, code):
    sender_email = "your_email@gmail.com"
    sender_password = "your_app_password"
  
    msg = MIMEText(f"Ваш код подтверждения: {code}")
    msg['Subject'] = 'Подтверждение регистрации'
    msg['From'] = sender_email
    msg['To'] = to_email
  
    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.starttls()
    server.login(sender_email, sender_password)
    server.send_message(msg)
    server.quit()

@app.route('/send_code', methods=['POST'])
def send_code():
    email = request.json['email']
    code = generate_code()
    send_email(email, code)
    return {"success": True}
 
Пользователь
Регистрация
13 Июн 2025
Сообщения
24

Gmail SMTP самый простой способ​


python:
import smtplib
from email.mime.text import MIMEText
from flask import Flask, request

app = Flask(__name__)

def send_email(to_email, code):
    sender_email = "your_email@gmail.com"
    sender_password = "your_app_password"
 
    msg = MIMEText(f"Ваш код подтверждения: {code}")
    msg['Subject'] = 'Подтверждение регистрации'
    msg['From'] = sender_email
    msg['To'] = to_email
 
    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.starttls()
    server.login(sender_email, sender_password)
    server.send_message(msg)
    server.quit()

@app.route('/send_code', methods=['POST'])
def send_code():
    email = request.json['email']
    code = generate_code()
    send_email(email, code)
    return {"success": True}
your_app_password откуда получить?
 
Сверху