Tijdelijke e-mailadressen zijn om vele redenen nuttig, zoals het vermijden van spam of het aanmelden voor websites zonder uw primaire e-mailadres te gebruiken. In deze handleiding maken we een tijdelijk e-mailsysteem met Python. Dit omvat het genereren van een willekeurig e-mailadres, het verzenden van e-mails en het controleren van de inbox.

1. Genereer een willekeurig e-mailadres

Om een tijdelijk e-mailadres te maken, genereren we een willekeurig e-mailadres met behulp van de random module.

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}")

Deze code genereert een willekeurige gebruikersnaam van 10 tekens en voegt het domein toe example.com.

2. SMTP instellen voor het verzenden van e-mails

Om e-mails naar het tijdelijke adres te verzenden, moeten we een SMTP-server configureren. In dit voorbeeld gebruiken we de SMTP-server van 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.")

Met deze code wordt een e-mail verzonden met de opgegeven gegevens subject en body naar het tijdelijke e-mailadres via de SMTP-server van Gmail.

3. Creëer een eenvoudige server om e-mails te ontvangen

Om het tijdelijke e-mailsysteem te voltooien, hebben we een server nodig om e-mails te ontvangen. Wij gebruiken de Flask kader en imaplib module hiervoor.

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)

Dit script zet een eenvoudige webserver op met Flask die de e-mailinbox controleert en de inhoud van alle e-mails afdrukt.

4. Alles samenvoegen

Nu combineren we de stappen om een tijdelijk e-mailadres te genereren, een e-mail te verzenden en de inbox te controleren in één 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)

Conclusie

Deze handleiding laat zien hoe u een tijdelijk e-mailsysteem kunt maken met Python. Het script genereert een willekeurig e-mailadres, verzendt een test-e-mail en controleert de inbox. U kunt dit script verder aanpassen en verbeteren op basis van uw specifieke vereisten.

Afhankelijkheden en instellingen

Om dit script uit te voeren, moet u ervoor zorgen dat de benodigde Python-pakketten zijn geïnstalleerd:

pip install Flask

Werk het script ook bij met uw e-mailgegevens en zorg ervoor dat uw e-mailaccount toegang geeft tot minder veilige apps of een app-specifiek wachtwoord gebruikt.

Met deze configuratie kunt u tijdelijke e-mailadressen voor verschillende doeleinden efficiënt beheren.

Opmerkingen (0)

Er zijn hier nog geen reacties, jij kunt de eerste zijn!

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *


Proxy kiezen en kopen

Datacenter Proxies

Roterende volmachten

UDP-proxy's

Vertrouwd door meer dan 10.000 klanten wereldwijd

Proxy-klant
Proxy-klant
Proxyklant flowch.ai
Proxy-klant
Proxy-klant
Proxy-klant