З причин X чи Y, іноді нам потрібно запрограмувати сервер нашої компанії на виконання певного завдання, і ми хочемо знати, чи було це завдання виконано без проблем, для цього ми програмуємо, що якщо все пройшло без проблем, повідомте нас ... але ... ¿Як може сервер повідомити нас?
Дуже просто, ми розповімо вам за допомогою сценарію Python щоб надіслати нам електронне повідомлення, таким чином, коли ми перевіримо поштову скриньку, ми прочитаємо, якщо сервер не мав проблем з розміщенням замовлення.
Сценарій залишив їх тут: send-email.py
Користуватися ним дуже просто, відкрийте термінал, у ньому напишіть наступне і натисніть [Введіть]:
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) і змініть ці дані:
- Ваша електронна адреса@desdelinux. Net електронною поштою (у цьому прикладі - » kzkggaara@ipichcb.rimed.cu)
- Тіло повідомлення за змістом електронного листа (у цьому прикладі - » Це тестовий електронний лист)
- you.mailserver.cu вашим поштовим сервером (у цьому прикладі - » 192.168.1.2)
- твій емейл користувачем (у цьому прикладі - » кзкггаара)
- Ваш пароль для вашого пароля (у цьому прикладі - » HAHA ... так ... звичайно ... LOL)
Це виглядає так: send-email.py (Змінено)
І вуаля, залишається лише надіслати електронний лист ... для цього ми помістимо наступне:
- python send-email.py "Тут ми розміщуємо тему" отримувач@domain.com
Іншими словами, ми повинні виконати сценарій і передати йому параметр "Тема" (тобто тему, яку буде приймати електронне повідомлення), а також кому (адреса електронної пошти) він буде надісланий.
Я надішлю собі електронне повідомлення, ось приклад:
% КОД 2%
А тепер 😀
Як бачите, щось досить просте ... але це може нам допомогти в певних випадках 😉
привіт
це дуже добре .. але я хочу щось подібне, що працює для Windows, але я не можу його знайти 🙁
Для Windows ... ммм ... ви повинні встановити Python на друга Windows: http://www.python.org/getit/windows/
для Windows існує інструмент, який називається Cobian, він дуже хороший та інтуїтивно зрозумілий
як включити скрипт для надсилання за допомогою gmail (smtp)?
У мене таке ж питання: /
Я можу:
s = SMTP ('smtp.gmail.com')
s.starttls () # Якщо ви використовуєте TLS
s.ehlo ()
Однак це видає мені цю помилку:
python send-email.py "Тут ми помістимо тему" aquimi@correo.com
Traceback (останній останній дзвінок):
Файл "send-email.py", рядок 14, в
s = SMTP ('smtp.gmail.com')
Файл "/usr/lib/python2.6/smtplib.py", рядок 239, у __init__
(код, повідомлення) = self.connect (хост, порт)
Файл "/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
підняти помилку, повідомлення
socket.error: [Errno 101] Мережа недоступна
Це добре, а потім ви запрограмуєте це за допомогою cron і готові повідомити: D.
Так! хе-хе, заощадьте багато часу, автоматизуйте речі за допомогою scipts 🙂
Дякую за допис, мені це цікаво, а додавання функціональності, яку цитує Reedyseth, має ще одну утиліту. 😉 привітання компаси!
Дякую за коментар 😀
Привіт друг.
Гаара, мій друже, я впевнений, що ця стаття дуже гарна, як усі тут підкреслюють, але я - NO-PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO-NEC - ТІОН
ЩО Я ЗРОБУ, ЩОБ ЇХ БАЧИТИ, РІЗАЛИ ГОРО?
Не можете відкрити це посилання? - » http://paste.desdelinux.net/89
Дозвольте щось запитати, чи можу я зробити сценарій, щоб у певний день я міг надіслати конкретне повідомлення всім користувачам мого центру? Я думаю, що так, але ви фахівець, і якщо ви підтвердите це, чи можете ви допомогти мені зробити його?
Так, щоб зробити "щось" у певний день ви повинні використовувати кронтаб.
Тоді, припускаючи, що ви хочете надіслати файл .PDF (наприклад, note.pdf) своїм користувачам, надсилати лише на 1 електронне повідомлення буде:
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
Дякую приятелю, сценарій чудово працює.
Де сценарій, якщо ви можете мені допомогти
Ви можете поділитися прикладами ????