पायथन में स्वचालित ईमेल संदेश कैसे भेजें

पायथन में स्वचालित ईमेल संदेश कैसे भेजें

जबकि वाणिज्यिक ईमेल क्लाइंट उपयोगकर्ता के अनुकूल GUI की सुविधा प्रदान करते हैं, उनमें अक्सर लचीलेपन और अनुकूलन क्षमता की कमी होती है जो कई डेवलपर्स या सामग्री निर्माता अपनी ईमेल आवश्यकताओं के लिए चाहते हैं।





अपने सोशल मीडिया चैनल पर एक नए ग्राहक को धन्यवाद ईमेल भेजने के लिए हो या अपने नवीनतम प्रोजेक्ट में ईमेल कार्यक्षमता जोड़ने के लिए, पायथन में एसएमटीपी का उपयोग करके स्वचालित संदेश भेजने की क्षमता कुछ ऐसी है जो काम आने के लिए बाध्य है।





यह जानने के लिए पढ़ें कि आप आज अपनी मशीन पर चल रहे ईमेल भेजने के लिए पायथन स्क्रिप्ट कैसे प्राप्त कर सकते हैं।





एसएमटीपी क्या है?

सीधे शब्दों में कहें तो एसएमटीपी, या सिंपल मेल ट्रांसफर प्रोटोकॉल, मेल सर्वर के लिए इंटरनेट पर ईमेल संचारित करने के लिए एक संचार प्रोटोकॉल है।

यह टीसीपी/आईपी सूट की एप्लिकेशन परत का एक अभिन्न अंग है, जो इंटरनेट या अन्य समान नेटवर्क पर संचार के लिए उपयोग किए जाने वाले प्रोटोकॉल का एक सेट है। एक नेटवर्क में जहां एसएमटीपी लागू किया जाता है, एक प्रक्रिया जिसे के रूप में जाना जाता है संरक्षित और अग्रसारित मेल को पूरे नेटवर्क में ले जाने में मदद करता है।



प्रत्येक समापन बिंदु पर, मेल ट्रांसफर एजेंट (एमटीए) के रूप में जाना जाने वाला सॉफ़्टवेयर भाग लेने वाले एसएमटीपी सर्वरों के बीच संचार की सुविधा के लिए स्टोर और फॉरवर्ड का उपयोग करता है। इसलिए, एसएमटीपी की मुख्य भूमिका केवल यह तय करना है कि नेटवर्क में मेल एक बिंदु से दूसरे बिंदु पर कहां और कैसे जाता है।

शुरू करना

इस प्रोग्राम का उपयोग करके ईमेल भेजने के लिए उपयोग करने के लिए आपके पास एक ईमेल खाता होना चाहिए। ऐसा इसलिए है क्योंकि हम ईमेल भेजने के लिए ईमेल क्लाइंट की SMTP सेवा का उपयोग करेंगे। इस ट्यूटोरियल के लिए, हम जीमेल का उपयोग करेंगे।





आप परीक्षण ईमेल भेजने के लिए स्थानीय एसएमटीपी डिबगिंग सर्वर का भी उपयोग कर सकते हैं, लेकिन अभी के लिए हम ईमेल भेजने के लिए एक ईमेल खाते का उपयोग करेंगे क्योंकि यह अधिक सहज है।

मौजूदा जीमेल खाते का उपयोग करना संभव है, लेकिन जैसे ही आप अपने कार्यक्रम के साथ खेलते हैं, यह जल्द ही परीक्षण ईमेल से भर सकता है। यही कारण है कि हम परीक्षण के उद्देश्य से एक 'थ्रोअवे' खाता बनाने की सलाह देते हैं।





अब, विकल्प को चालू करें कम सुरक्षित ऐप्स की अनुमति दें अपने जीमेल खाते तक पहुँचने के लिए। फेंके गए ईमेल का उपयोग करने का यह एक और कारण है क्योंकि आपके प्राथमिक ईमेल की गोपनीयता सेटिंग्स के साथ खिलवाड़ करने की अनुशंसा नहीं की जाती है।

पायथन में ईमेल लिखना

पायथन 3 smtplib (smtp लाइब्रेरी के लिए छोटा) नामक मॉड्यूल के साथ पहले से इंस्टॉल आता है, जिसका उपयोग SMTP सर्वर के साथ काम करने के लिए किया जा सकता है।

किसी भी अन्य पायथन मॉड्यूल की तरह, आपको सबसे पहले smtplib आयात करना होगा।

import smtplib

एक SMTP ऑब्जेक्ट प्रारंभ करना

अब, आप SMTP ऑब्जेक्ट बनाने के लिए smtplib का उपयोग कर सकते हैं, जो आपको पारंपरिक ईमेल क्लाइंट की अधिकांश कार्यक्षमता प्रदान करेगा। हालाँकि, एक SMTP ऑब्जेक्ट के फ़ंक्शन का उपयोग केवल इंस्टेंस विधियों के माध्यम से किया जा सकता है। तो, स्वाभाविक रूप से, अगला कदम ऑब्जेक्ट इंस्टेंस घोषित करना है।

mySMTP = smtplib.SMTP('smtp.google.com')

यह Google के SMTP सर्वर का उपयोग करके ईमेल भेजने के लिए SMTP ऑब्जेक्ट को कॉन्फ़िगर करता है।

इसके बाद, हम प्रेषक और प्राप्तकर्ता ईमेल निर्दिष्ट करते हैं। यहां वह जगह है जहां आपने पहले बनाया जीमेल खाता काम में आता है।

emailSender = senderMail@sender.com
myThroaway = 'myEmail@gmail.com'
emailRecipients = [myThroaway]

यहां एक बात ध्यान देने योग्य है कि प्राप्तकर्ता सूची वास्तव में एक सरणी है, जिसका अर्थ है कि इसे गैर-परमाणु मूल्यों को संग्रहीत करने के लिए डिज़ाइन किया गया है। परिणामस्वरूप, आप इस क्षेत्र में एक संपूर्ण मेलिंग सूची भी निर्दिष्ट कर सकते हैं!

संदेश लिखना

निश्चित रूप से प्रक्रिया का सबसे सीधा हिस्सा, यहां आपको उन मानों को इनपुट करना होगा जो आप एक नया ईमेल लिखते समय सामान्य रूप से जोड़ते हैं। यह भी शामिल है:

  • प्रेषक का विवरण
  • प्राप्तकर्ता का विवरण
  • विषय
  • संदेश का मुख्य हिस्सा

इन क्षेत्रों को ट्रिपल-उद्धरण चिह्नों के अंदर एक साथ रखा गया है और निम्नानुसार सीमांकित किया गया है:

मेरा गेम क्रैश क्यों होता रहता है
newEmail = '''From: From Person
To: To Person
Subject: Email Test
This is the body of the email.
'''

ईमेल भेजना

अंत में, हम आपके एसएमटीपी सर्वर से प्राप्तकर्ता के सर्वर पर मेल भेजने के लिए सेंडमेल कमांड का उपयोग कर सकते हैं।

mySMTP.sendmail(emailSender, emailRecipients, newEmail)

अब, केवल एक अंतिम चरण है: किसी भी संभावित प्रोग्राम क्रैश को रोकने के लिए कोड को फिर से व्यवस्थित करना।

अपने पायथन ईमेल प्रोग्राम का समस्या निवारण

कभी-कभी, आपका SMTP सर्वर प्राप्तकर्ता के साथ संबंध स्थापित करने में विफल हो सकता है, या एक SMTP पोर्ट से दूसरे में ईमेल भेजने में कोई समस्या हो सकती है। ऐसी स्थिति में, आपका प्रोग्राम अनपेक्षित रूप से क्रैश हो सकता है।

ऐसी संभावनाओं को ध्यान में रखते हुए, आप a . का उपयोग कर सकते हैं कोशिश-सिवाय ब्लॉक करें और त्रुटि-प्रवण कथनों को अंदर रखें प्रयत्न खंड मैथा। आपका पूरा कार्यक्रम, कोशिश-छोड़कर ब्लॉक के साथ, कुछ इस तरह दिखना चाहिए:

import smtplib
emailSender = senderMail@sender.com
myThroaway = ‘my_email@gmail.com’
emailRecipients = [myThroaway]
newEmail = '''From: From Person
To: To Person
Subject: Email Test
This is the body of the email.
'''
try:
smtpObj = smtplib.SMTP(‘smtp.gmail.com’)
mySMTP.sendmail(emailSender, emailRecipients, newEmail)
print (Email sent successfully!)
except SMTPException:
print ('Error: There was an error in sending your email.')

अपने ईमेल सुरक्षित करना

यदि आप ईमेल भेजने के लिए वास्तविक दुनिया की सेटिंग में पायथन का उपयोग करने का इरादा रखते हैं, तो यह सुनिश्चित करना महत्वपूर्ण है कि संचार दोनों सिरों पर सुरक्षित है।

डिफ़ॉल्ट पोर्ट के साथ एक साधारण एसएमटीपी सर्वर का उपयोग संचार के लिए कोई एन्क्रिप्शन परत प्रदान नहीं करता है। इसका अर्थ यह है कि यदि कोई तृतीय-पक्ष आपके नेटवर्क पर सुन रहा है, तो वह आपके लॉगिन क्रेडेंशियल और आपके ईमेल में निहित जानकारी तक पहुंच सकता है।

इस समस्या से बचने का एक तरीका यह है कि आप अपने संचार को एन्क्रिप्ट करने के लिए टीएलएस (ट्रांसपोर्ट लेयर सिक्योरिटी) प्रोटोकॉल का उपयोग करें। यह वही प्रोटोकॉल है जिसका उपयोग प्रमुख ईमेल क्लाइंट जैसे जीमेल और आउटलुक द्वारा यह सुनिश्चित करने के लिए किया जाता है कि आपके ईमेल कभी गलत हाथों में न पड़ें।

ऐसा करने के लिए, हमें पहले बनाए गए प्रोग्राम में कुछ मामूली बदलाव करने होंगे।

पहला कदम, निश्चित रूप से, आयात करना है एसएसएल साथ में पुस्तकालय श्रीमतीप्लिब . NS एसएसएल पुस्तकालय आपको एक सुरक्षित एसएसएल संदर्भ बनाने और दोनों सिरों पर विशिष्ट बंदरगाहों से कनेक्ट करके एक एन्क्रिप्टेड नेटवर्क पर संचार करने की क्षमता देता है।

एक सुरक्षित एसएसएल संदर्भ सिफर, प्रोटोकॉल संस्करण, विश्वसनीय प्रमाणपत्र, टीएलएस विकल्प और टीएलएस एक्सटेंशन के संग्रह के अलावा और कुछ नहीं है।

इसके बाद, हम टीएलएस पोर्ट निर्दिष्ट कर सकते हैं और कुछ जोड़ सकते हैं एसएसएल एक सुरक्षित ईमेलर बनाने के लिए पुस्तकालय कार्य करता है।

किए गए सभी परिवर्तनों के साथ कोड कुछ इस तरह दिखता है:

import smtplib, ssl
smtpServer = 'smtp.gmail.com'
port = 587
myEmail = 'my_email@gmail.com'
password = 'my_password'
#email and password can also be user input fields
context = ssl.create_default_context()
newEmail = '''From: From Person
To: To Person
Subject: Email Test
This is the body of the email.
'''
try:
server = smtplib.SMTP(smtpServer,port)
server.starttls(context=context)
server.login(newEmail, password)
except Exception as e:
print('the email could not be sent.')
finally:
server.quit()

पहले की तरह, किसी भी अचानक प्रोग्राम क्रैश को रोकने के लिए आपको कोशिश-छोड़कर ब्लॉक में SMTP इंस्टेंस बनाना और उपयोग करना चाहिए।

क्या सभी ps4 गेम ps5 . के साथ संगत हैं?

आप इस पायथन लिपि के साथ क्या कर सकते हैं

अब जब आपने कोड का उपयोग करके ईमेल को स्वचालित करने का अद्भुत और आश्चर्यजनक रूप से उपयोगी कौशल प्राप्त कर लिया है, तो आप इसे किसी भी ऐसे प्लेटफ़ॉर्म पर लागू कर सकते हैं, जिसके लिए विविध मेलिंग सूची में ईमेल भेजने की आवश्यकता होती है।

अपनी व्यक्तिगत वेबसाइट पर इसका उपयोग करने से लेकर स्वचालित पावती ईमेल भेजने तक इसका उपयोग करने के लिए क्रिसमस कार्ड या अपने परिवार और दोस्तों को निमंत्रण भेजने के लिए, इस छोटी पायथन लिपि के उपयोग केवल आपकी अपनी रचनात्मकता द्वारा सीमित हैं।

इसके अलावा, यह सिर्फ कई अद्भुत चीजों में से एक है जो आप पायथन के साथ कर सकते हैं। अपने सर्वव्यापी डेवलपर समर्थन और सीखने में आसान सिंटैक्स के साथ, पायथन कौशल चुनना कभी आसान नहीं रहा।

कोड के साथ बढ़िया चीज़ें बनाना जारी रखने के लिए, कैसे करें पर हमारी मार्गदर्शिका देखें पायथन 3 के साथ अपना खुद का टेलीग्राम बॉट बनाएं !

साझा करना साझा करना कलरव ईमेल Keras, Pytorch, Tensorflow, और अधिक के साथ अपने Python और AI कौशल को कैसे अपग्रेड करें

अपने प्रोग्रामिंग और वेब विकास कौशल को पायथन, आर्टिफिशियल इंटेलिजेंस, केरस, पायटॉर्च, और अधिक पर अपग्रेड करें

आगे पढ़िए
संबंधित विषय
  • प्रोग्रामिंग
  • जीमेल लगीं
  • ईमेल युक्तियाँ
  • अजगर
  • कार्य स्वचालन
लेखक के बारे में यश चेलानी(१० लेख प्रकाशित)

यश एक महत्वाकांक्षी कंप्यूटर विज्ञान का छात्र है, जो चीजों को बनाना और तकनीक की सभी चीजों के बारे में लिखना पसंद करता है। अपने खाली समय में, वह स्क्वैश खेलना पसंद करते हैं, नवीनतम मुराकामी की एक प्रति पढ़ते हैं, और स्किरीम में ड्रेगन का शिकार करते हैं।

यश चेलानी की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें