Gli indirizzi e-mail temporanei sono utili per molti motivi, ad esempio evitare lo spam o registrarsi a siti Web senza utilizzare l'indirizzo e-mail principale. In questa guida creeremo un sistema di posta elettronica temporaneo utilizzando Python. Ciò include la generazione di un indirizzo e-mail casuale, l'invio di e-mail e il controllo della casella di posta.

1. Genera un indirizzo email casuale

Per creare un'e-mail temporanea, genereremo un indirizzo e-mail casuale utilizzando il file random modulo.

import random
import string

def generate_temp_email(domain='example.com'):
    username = ''.join(random.choices(string.ascii_lowercase + string.digits, k=10))
    return f"{username}@{domain}"

temp_email = generate_temp_email()
print(f"Temporary Email: {temp_email}")

Questo codice genera un nome utente casuale di 10 caratteri e aggiunge il dominio example.com.

2. Configura SMTP per l'invio di e-mail

Per inviare email all'indirizzo temporaneo, dobbiamo configurare un server SMTP. In questo esempio utilizzeremo il server SMTP di Gmail.

import smtplib
from email.mime.text import MIMEText

def send_email(to_address, subject, body):
    from_address = '[email protected]'
    password = 'your-email-password'
    
    msg = MIMEText(body)
    msg['Subject'] = subject
    msg['From'] = from_address
    msg['To'] = to_address

    with smtplib.SMTP('smtp.gmail.com', 587) as server:
        server.starttls()
        server.login(from_address, password)
        server.sendmail(from_address, to_address, msg.as_string())

# Example usage
send_email(temp_email, "Test Subject", "This is a test email.")

Questo codice invia un'e-mail con l'oggetto specificato subject e body all'indirizzo email temporaneo utilizzando il server SMTP di Gmail.

3. Crea un server semplice per ricevere e-mail

Per completare il sistema di posta elettronica temporaneo, abbiamo bisogno di un server per ricevere le email. Utilizzeremo il Flask quadro e imaplib modulo per questo.

from flask import Flask
import imaplib
import email

app = Flask(__name__)

# IMAP server configuration for receiving emails
IMAP_SERVER = 'imap.gmail.com'
IMAP_PORT = 993
EMAIL_ACCOUNT = '[email protected]'
PASSWORD = 'your-email-password'

def check_inbox():
    mail = imaplib.IMAP4_SSL(IMAP_SERVER, IMAP_PORT)
    mail.login(EMAIL_ACCOUNT, PASSWORD)
    mail.select('inbox')

    status, messages = mail.search(None, 'ALL')
    email_ids = messages[0].split()
    
    for email_id in email_ids:
        status, msg_data = mail.fetch(email_id, '(RFC822)')
        msg = email.message_from_bytes(msg_data[0][1])
        print(f"From: {msg['from']}\nSubject: {msg['subject']}\n\n{msg.get_payload(decode=True).decode('utf-8')}")

    mail.logout()

@app.route('/check_mail', methods=['GET'])
def check_mail():
    check_inbox()
    return "Checked Inbox"

if __name__ == '__main__':
    app.run(port=5000)

Questo script configura un semplice server Web con Flask che controlla la casella di posta elettronica e stampa il contenuto di tutte le e-mail.

4. Mettere tutto insieme

Ora combineremo i passaggi per generare un indirizzo email temporaneo, inviare un'email e controllare la posta in arrivo in un unico script.

import random
import string
import smtplib
from email.mime.text import MIMEText
import imaplib
import email
from flask import Flask

app = Flask(__name__)

def generate_temp_email(domain='example.com'):
    username = ''.join(random.choices(string.ascii_lowercase + string.digits, k=10))
    return f"{username}@{domain}"

def send_email(to_address, subject, body):
    from_address = '[email protected]'
    password = 'your-email-password'
    
    msg = MIMEText(body)
    msg['Subject'] = subject
    msg['From'] = from_address
    msg['To'] = to_address

    with smtplib.SMTP('smtp.gmail.com', 587) as server:
        server.starttls()
        server.login(from_address, password)
        server.sendmail(from_address, to_address, msg.as_string())

IMAP_SERVER = 'imap.gmail.com'
IMAP_PORT = 993
EMAIL_ACCOUNT = '[email protected]'
PASSWORD = 'your-email-password'

def check_inbox():
    mail = imaplib.IMAP4_SSL(IMAP_SERVER, IMAP_PORT)
    mail.login(EMAIL_ACCOUNT, PASSWORD)
    mail.select('inbox')

    status, messages = mail.search(None, 'ALL')
    email_ids = messages[0].split()
    
    for email_id in email_ids:
        status, msg_data = mail.fetch(email_id, '(RFC822)')
        msg = email.message_from_bytes(msg_data[0][1])
        print(f"From: {msg['from']}\nSubject: {msg['subject']}\n\n{msg.get_payload(decode=True).decode('utf-8')}")

    mail.logout()

@app.route('/check_mail', methods=['GET'])
def check_mail():
    check_inbox()
    return "Checked Inbox"

if __name__ == '__main__':
    temp_email = generate_temp_email()
    print(f"Temporary Email: {temp_email}")
    
    send_email(temp_email, "Test Subject", "This is a test email.")
    app.run(port=5000)

Conclusione

Questa guida dimostra come creare un sistema di posta elettronica temporaneo utilizzando Python. Lo script genera un indirizzo email casuale, invia un'email di prova e controlla la posta in arrivo. Puoi personalizzare e migliorare ulteriormente questo script in base ai tuoi requisiti specifici.

Dipendenze e configurazione

Per eseguire questo script, assicurati di avere installati i pacchetti Python necessari:

pip install Flask

Inoltre, aggiorna lo script con le tue credenziali e-mail e assicurati che il tuo account e-mail consenta l'accesso ad app meno sicure o utilizzi una password specifica per l'app.

Con questa configurazione, puoi gestire in modo efficiente gli indirizzi email temporanei per vari scopi.

Commenti (0)

Non ci sono ancora commenti qui, puoi essere il primo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


Scegliere e acquistare il Proxy

Proxy per data center

Proxy a rotazione

Proxy UDP

Scelto da oltre 10.000 clienti in tutto il mondo

Cliente proxy
Cliente proxy
Cliente proxy flowch.ai
Cliente proxy
Cliente proxy
Cliente proxy