Geçici e-posta adresleri, spam'den kaçınmak veya birincil e-posta adresinizi kullanmadan web sitelerine kaydolmak gibi birçok nedenden dolayı faydalıdır. Bu kılavuzda Python kullanarak geçici bir e-posta sistemi oluşturacağız. Buna rastgele bir e-posta adresi oluşturma, e-posta gönderme ve gelen kutusunu kontrol etme dahildir.

1. Rastgele Bir E-posta Adresi Oluşturun

Geçici bir e-posta oluşturmak için, aşağıdakileri kullanarak rastgele bir e-posta adresi oluşturacağız: random modülü.

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

Bu kod 10 karakterden oluşan rastgele bir kullanıcı adı oluşturur ve etki alanını ekler example.com.

2. E-posta Göndermek için SMTP'yi Ayarlayın

Geçici adrese e-posta göndermek için bir SMTP sunucusu yapılandırmamız gerekir. Bu örnekte Gmail'in SMTP sunucusunu kullanacağız.

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

Bu kod belirtilenleri içeren bir e-posta gönderir subject ve body Gmail'in SMTP sunucusunu kullanarak geçici e-posta adresine.

3. E-posta Almak için Basit Bir Sunucu Oluşturun

Geçici e-posta sistemini tamamlamak için e-postaları alacak bir sunucuya ihtiyacımız var. biz kullanacağız Flask çerçeve ve imaplib Bunun için modül.

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)

Bu komut dosyası, Flask ile e-posta gelen kutusunu kontrol eden ve tüm e-postaların içeriğini yazdıran basit bir web sunucusu kurar.

4. Hepsini Bir Araya Getirmek

Şimdi geçici bir e-posta adresi oluşturma, e-posta gönderme ve gelen kutusunu kontrol etme adımlarını tek bir komut dosyasında birleştireceğiz.

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)

Sonuç

Bu kılavuz Python kullanarak geçici bir e-posta sisteminin nasıl oluşturulacağını gösterir. Komut dosyası rastgele bir e-posta adresi oluşturur, bir test e-postası gönderir ve gelen kutusunu kontrol eder. Bu komut dosyasını özel gereksinimlerinize göre daha da özelleştirebilir ve geliştirebilirsiniz.

Bağımlılıklar ve Kurulum

Bu betiği çalıştırmak için gerekli Python paketlerinin kurulu olduğundan emin olun:

pip install Flask

Ayrıca komut dosyasını e-posta kimlik bilgilerinizle güncelleyin ve e-posta hesabınızın daha az güvenli uygulamalara erişime izin verdiğinden veya uygulamaya özel bir şifre kullandığından emin olun.

Bu kurulumla, çeşitli amaçlara yönelik geçici e-posta adreslerini verimli bir şekilde yönetebilirsiniz.

Yorumlar (0)

Burada henüz yorum yok, ilk siz olabilirsiniz!

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


Proxy Seçin ve Satın Alın

Veri Merkezi Proxyleri

Dönen Proxyler

UDP Proxyleri

Dünya Çapında 10.000'den Fazla Müşterinin Güvendiği

Vekil Müşteri
Vekil Müşteri
Vekil Müşteri flowch.ai
Vekil Müşteri
Vekil Müşteri
Vekil Müşteri