Basit Posta Aktarım Protokolü (SMTP), Python kullanarak e-posta aktarımını gerçekleştirmek için bir protokol olarak kullanılır. E-posta sunucuları arasında e-postaları yönlendirmek için kullanılır. Kullanıcıların diğerine posta göndermesine olanak tanıyan bir uygulama katmanı protokolüdür. Alıcı, protokolleri kullanarak e-postayı alır POP(Postane Protokolü) Ve IMAP(İnternet Mesaj Erişim Protokolü) .
Sunucu bir istemciden TCP bağlantısını dinlediğinde, 587 numaralı bağlantı noktasında bir bağlantı başlatır.
Diana Mary Blacker
Python şunları sağlar: smtplib Bir internet makinesine e-posta göndermek için kullanılan SMTP istemci oturumu nesnesini tanımlayan modül. Bu amaçla ithalat yapmamız gerekiyor. smtplib import deyimini kullanarak modül.
$ import smtplib
SMTP nesnesi e-posta aktarımı için kullanılır. Smtplib nesnesini oluşturmak için aşağıdaki sözdizimi kullanılır.
import smtplib smtpObj = smtplib.SMTP(host, port, local_hostname)
Aşağıdaki parametreleri kabul eder.
Postayı istenen makineye göndermek için SMTP nesnesinin sendmail() yöntemi kullanılır. Sözdizimi aşağıda verilmiştir.
smtpObj.sendmail(sender, receiver, message)
Örnek
veri yapıları java
#!/usr/bin/python3 import smtplib sender_mail = '[email protected]' receivers_mail = ['[email protected]'] message = '''From: From Person %s To: To Person %s Subject: Sending SMTP e-mail This is a test e-mail message. '''%(sender_mail,receivers_mail) try: smtpObj = smtplib.SMTP('localhost') smtpObj.sendmail(sender_mail, receivers_mail, message) print('Successfully sent email') except Exception: print('Error: unable to send email')
Gmail'den e-posta gönderme
E-postaların Gmail SMTP sunucusu kullanılarak gönderildiği durumlar vardır. Bu durumda localhost'u 587 portuyla kullanmak yerine Gmail'i SMTP sunucusu olarak geçirebiliriz.
Aşağıdaki sözdizimini kullanın.
$ smtpObj = smtplib.SMTP('gmail.com', 587)
Burada Gmail kullanıcı adı ve şifresini kullanarak Gmail hesabına giriş yapmamız gerekiyor. Bu amaçla smtplib, gönderenin kullanıcı adını ve şifresini kabul eden login() yöntemini sağlar.
mamta kulkarni
Bu, Gmail kullanıyorsanız Gmail'inizin sizden daha az güvenli uygulamalara erişim istemesine neden olabilir. Bunun çalışması için bunu geçici olarak AÇIK duruma getirmeniz gerekecektir.
Aşağıdaki örneği düşünün.
Örnek
#!/usr/bin/python3 import smtplib sender_mail = '[email protected]' receivers_mail = ['[email protected]'] message = '''From: From Person %s To: To Person %s Subject: Sending SMTP e-mail This is a test e-mail message. '''%(sender_mail,receivers_mail) try: password = input('Enter the password'); smtpObj = smtplib.SMTP('gmail.com',587) smtpobj.login(sender_mail,password) smtpObj.sendmail(sender_mail, receivers_mail, message) print('Successfully sent email') except Exception: print('Error: unable to send email')
HTML'yi e-postayla gönderme
HTML'yi göndermek için MIME sürümünü, içerik türünü ve karakter kümesini belirterek mesajdaki HTML'yi biçimlendirebiliriz.
yıl çeyreklere bölünüyor
Aşağıdaki örneği düşünün.
Örnek
#!/usr/bin/python3 import smtplib sender_mail = '[email protected]' receivers_mail = ['[email protected]'] message = '''From: From Person %s To: To Person %s MIME-Version:1.0 Content-type:text/html Subject: Sending SMTP e-mail <h3>Python SMTP</h3> <strong>This is a test e-mail message.</strong> '''%(sender_mail,receivers_mail) try: smtpObj = smtplib.SMTP('localhost') smtpObj.sendmail(sender_mail, receivers_mail, message) print('Successfully sent email') except Exception: print('Error: unable to send email')