كيفية إرسال البريد من المحطة باستخدام برنامج نصي

لأسباب X أو Y ، نحتاج في بعض الأحيان إلى برمجة خادم شركتنا للقيام بمهمة معينة ، ونريد معرفة ما إذا تم تنفيذ هذه المهمة دون مشاكل ، لذلك نقوم ببرمجة أنه إذا سارت الأمور بسلاسة ، فأخبرنا ... ولكن ... كيف يمكن للخادم إخطارنا؟

بسيط جدًا ، سنخبرك من خلال برنامج نصي Python لإرسال بريد إلكتروني إلينا ، بهذه الطريقة عندما نتحقق من صندوق البريد ، سنقرأ ما إذا كان الخادم لا يواجه مشاكل في تقديم الطلب.

تركهم السيناريو هنا: send-email.py

لاستخدامه بسيط للغاية ، افتح Terminal ، واكتب فيه ما يلي واضغط [أدخل]:

cd $HOME/ && wget http://paste.desdelinux.net/paste/?dl=89 && mv index.html\?dl\=89 send-email.py && chmod +s send-email.py

أتركك كيف ستكون العملية:

٪ كود 1٪

 

بمجرد الانتهاء من ذلك ، يجب عليك تحرير البرنامج النصي لوضع بياناتك الخاصة ، وسأقوم بتحريره عن طريق وضع بياناتي ، أي البيانات من هنا عملي.

افتح البرنامج النصي (send-email.py) وقم بتغيير هذه البيانات:

  • your-email@desdelinux.net عن طريق بريدك الإلكتروني (في هذا المثال - » kzkggaara@ipichcb.rimed.cu)
  • نص الرسالة بمحتوى البريد الإلكتروني (في هذا المثال - » هذا بريد إلكتروني تجريبي)
  • you.mailserver.cu بواسطة خادم البريد الخاص بك (في هذا المثال - » 192.168.1.2)
  • بريدك الالكتروني بواسطة المستخدم الخاص بك (في هذا المثال - » كزكغارا)
  • كلمة السر خاصتك لكلمة المرور الخاصة بك (في هذا المثال - » هاها ... نعم ... بالتأكيد ... لول)

يبدو كما يلي: send-email.py (معدل)

وفويلا ، يبقى فقط إرسال البريد الإلكتروني ... لذلك سنضع ما يلي:

  • python send-email.py "هنا نضع الموضوع" المستلمdomain.com

بمعنى آخر ، يجب علينا تنفيذ النص وتمرير معلمة "الموضوع" (أي ، الموضوع الذي سيتأخذه البريد الإلكتروني) وأيضًا لمن (عنوان البريد الإلكتروني) سيتم إرساله.

سأرسل لنفسي بريدًا إلكترونيًا ، هذا هو المثال:

٪ كود 2٪

 

والآن 😀

كما ترون شيء بسيط جدا ... لكن يمكن أن يساعدنا في مناسبات معينة 😉

تحياتي


محتوى المقال يلتزم بمبادئنا أخلاقيات التحرير. للإبلاغ عن خطأ انقر فوق هنا.

16 تعليقات ، اترك لك

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   جوندرليك قال

    إنه جيد جدًا .. لكني أريد شيئًا كهذا يعمل مع Windows ولكن لا يمكنني العثور عليه 🙁

    1.    KZKG ^ جارا قال

      لنظام التشغيل Windows ... mmm ... يجب تثبيت Python على صديق Windows: http://www.python.org/getit/windows/

    2.    جون قال

      بالنسبة للنوافذ ، هناك أداة تسمى Cobian ، وهي جيدة جدًا وبديهية

  2.   كارلوس ت. قال

    كيفية تمكين البرنامج النصي للإرسال مع gmail (smtp)؟

    1.    إيلويلمر قال

      لدي نفس السؤال: /

      استطيع:

      s = SMTP ("smtp.gmail.com")
      s.starttls () # إذا كنت تستخدم TLS
      s.ehlo ()

      ومع ذلك فإنه يعطيني هذا الخطأ:

      python send-email.py "هنا نضع الموضوع" aquimi@correo.com
      تتبع (آخر مكالمة أخيرة):
      ملف "send-email.py" ، السطر 14 ، بتنسيق
      s = SMTP ("smtp.gmail.com")
      ملف "/usr/lib/python2.6/smtplib.py" ، السطر 239 ، في __init__
      (code، msg) = self.connect (host، port)
      ملف "/usr/lib/python2.6/smtplib.py" ، السطر 295 ، في الاتصال
      self.sock = self._get_socket (مضيف ، منفذ ، self.timeout)
      ملف "/usr/lib/python2.6/smtplib.py" ، السطر 273 ، في _get_socket
      عودة socket.create_connection ((منفذ ، مضيف) ، مهلة)
      ملف "/usr/lib/python2.6/socket.py" ، السطر 561 ، في create_connection
      رفع الخطأ ، msg
      socket.error: [Errno 101] لا يمكن الوصول إلى الشبكة

  3.   ريديسيث قال

    إنه جيد ، ثم تقوم ببرمجته باستخدام cron وجاهز للإبلاغ: D.

    1.    KZKG ^ جارا قال

      نعم! الكالينجيون ، وفر الكثير من الوقت لأتمتة الأشياء باستخدام scipts 🙂

  4.   لويدز قال

    شكرًا على المنشور ، أجده مثيرًا للاهتمام وإضافة الوظيفة التي يستشهد بها Reedyseth لها فائدة أخرى 😉 تحيات البوصلة!

    1.    KZKG ^ جارا قال

      شكرا لك على التعليق 😀
      تحيات صديق.

  5.   Neo61 قال

    جارا ، صديقي ، أنا متأكد من أن هذا المقال جيد جدًا حيث يبرز الجميع هنا ولكني - NO -PUE-DO-SEE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO- NEC- TION
    ماذا أفعل لأرىهم ، قطع حلقتي؟

    1.    KZKG ^ جارا قال

      لا يمكن فتح هذا الرابط؟ - » http://paste.desdelinux.net/89

  6.   Neo61 قال

    دعني أسألك شيئًا ، هل يمكنني عمل نص برمجي بحيث يمكنني في يوم معين إرسال رسالة محددة إلى جميع مستخدمي المركز؟ أعتقد ذلك ، لكنك المختص وإذا تأكدت من ذلك ، فهل يمكنك مساعدتي في صنع واحد؟

    1.    KZKG ^ جارا قال

      نعم ، للقيام "بشيء ما" في يوم معين يجب عليك استخدامه كرونتاب.
      بعد ذلك ، بافتراض أنك تريد إرسال ملف PDF (على سبيل المثال ، note.pdf) إلى المستخدمين ، فإن الإرسال إلى بريد إلكتروني واحد فقط سيكون:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      الآن ، لإرسال ذلك وليس فقط إلى عنوان واحد ، ولكن إلى أكثر من ذلك بكثير ... ستحتاج إلى الحصول على العناوين في ملف نصي (مفصولة بفاصل أسطر) ، ثم استخدام حلقة لل. على سبيل المثال ، إذا كانت لديك رسائل البريد الإلكتروني في address.txt ، فسيكون:

      for i in `cat direcciones.txt`;
      do
      mail -s "Este es el asunto del correo" $i < nota.pdf
      done

  7.   ديفيد كاندل قال

    شكرا يا صديقي ، السيناريو يعمل بشكل رائع.

  8.   صريح قال

    أين هو النص إذا كنت تستطيع مساعدتي

  9.   أرئيلي قال

    هل يمكنك مشاركة الأمثلة ؟؟؟؟