Z powodów X lub Y czasami musimy zaprogramować serwer naszej firmy do wykonania określonego zadania i chcemy wiedzieć, czy to zadanie zostało wykonane bez problemów, w tym celu programujemy, że jeśli wszystko poszło gładko, powiadom nas… ale… ¿ W jaki sposób serwer może nas powiadomić?
Bardzo proste, opowiem Ci za pomocą scenariusza Python aby wysłać do nas e-mail, w ten sposób sprawdzając skrzynkę pocztową, przeczytamy, czy serwer nie miał problemów ze złożeniem zamówienia.
Skrypt zostawił je tutaj: wyślij-e-mail.py
Korzystanie z niego jest bardzo proste, otwórz terminal, wpisz w nim następujące polecenie i naciśnij [Wchodzić]:
cd $HOME/ && wget http://paste.desdelinux.net/paste/?dl=89 && mv index.html\?dl\=89 send-email.py && chmod +s send-email.py
Zostawiam ci, jak wyglądałby proces:
% CODE1%
Gdy to zrobisz, musisz edytować skrypt, aby umieścić własne dane, ja go edytuję, umieszczając moje dane, czyli dane z mojej pracy.
Otwórz skrypt (send-email.py) i zmień te dane:
- Twój email@desdelinux. Netto e-mailem (w tym przykładzie - » kzkggaara@ipichcb.rimed.cu)
- Treść wiadomości według treści wiadomości e-mail (w tym przykładzie - » To jest wiadomość testowa)
- you.mailserver.cu przez Twój serwer pocztowy (w tym przykładzie - » 192.168.1.2)
- Twój email przez użytkownika (w tym przykładzie - » kzkggaara)
- Twoje hasło swojego hasła (w tym przykładzie - » HAHA… tak… jasne… LOL)
Wygląda to następująco: send-email.py (zmodyfikowany)
I voila, pozostaje tylko wysłać wiadomość e-mail ... w tym celu umieścimy następujące informacje:
- python send-email.py "Tutaj umieszczamy temat" adresat@domena.com
Innymi słowy, musimy wykonać skrypt i przekazać mu parametr „Temat” (czyli temat, który będzie zawierał e-mail), a także do kogo (adres e-mail) zostanie wysłany.
Wyślę do siebie e-mail, oto przykład:
% CODE2%
A teraz 😀
Jak widać, coś całkiem prostego ... ale może nam w pewnych sytuacjach pomóc 😉
pozdrowienia
to jest bardzo dobre ... ale chcę czegoś takiego, co działa na Windows, ale nie mogę tego znaleźć 🙁
W przypadku systemu Windows ... mmm ... musisz zainstalować Pythona na znajomym Windows: http://www.python.org/getit/windows/
dla Windows jest narzędzie o nazwie Cobian, jest bardzo dobre i intuicyjne
jak włączyć wysyłanie przez skrypt przez Gmaila (smtp)?
Mam to samo pytanie: /
Mógłbym:
s = SMTP („smtp.gmail.com”)
s.starttls () # Jeśli używasz TLS
s.ehlo ()
Jednak daje mi ten błąd:
python send-email.py "Tutaj umieściliśmy temat" aquimi@correo.com
Traceback (ostatnie połączenie ostatnio):
Plik „send-email.py”, wiersz 14, w
s = SMTP („smtp.gmail.com”)
Plik „/usr/lib/python2.6/smtplib.py”, wiersz 239, w __init__
(kod, msg) = self.connect (host, port)
Plik „/usr/lib/python2.6/smtplib.py”, wiersz 295, w connect
self.sock = self._get_socket (host, port, self.timeout)
Plik „/usr/lib/python2.6/smtplib.py”, wiersz 273, w _get_socket
return socket.create_connection ((port, host), limit czasu)
Plik „/usr/lib/python2.6/socket.py”, wiersz 561, w create_connection
zgłoś błąd, msg
socket.error: [Errno 101] Sieć jest nieosiągalna
To dobrze, a potem programujesz go za pomocą crona i jesteś gotowy do raportu: D.
Tak! hehe, oszczędzaj dużo czasu, automatyzuj rzeczy za pomocą skryptów 🙂
Dzięki za post, uważam go za interesujący, a dodanie funkcjonalności, o której mówi Reedyseth, ma jeszcze jedno narzędzie. 😉 pozdrowienia compas!
Dziękuję za komentarz 😀
Witaj przyjacielu.
Gaara, mój przyjacielu, jestem pewien, że ten artykuł jest bardzo dobry, ponieważ wszyscy tutaj podkreślają, ale ja - NO-PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO-NEC- CIA
CO MAM ZROBIĆ, BY JE ZOBACZYĆ, PODCIĘCIE GARDŁO?
Nie możesz otworzyć tego linku? - » http://paste.desdelinux.net/89
Pozwól, że o coś zapytam, czy mógłbyś zrobić skrypt, abym pewnego dnia mógł wysłać konkretną wiadomość do wszystkich użytkowników mojego centrum? Myślę, że tak, ale jesteś specjalistą i jeśli to potwierdzisz, czy możesz mi pomóc w jego wykonaniu?
Tak, aby „coś” zrobić w danym dniu musisz użyć crontab.
Następnie, zakładając, że chcesz wysłać plik .PDF (na przykład note.pdf) do swoich użytkowników, aby wysłać tylko do jednego e-maila, będzie to:
mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf
Teraz, aby wysłać to, ale nie tylko na jeden adres, ale na wiele innych ... musiałbyś mieć adresy w pliku tekstowym (oddzielone znakiem końca wiersza), a następnie użyć pętli dla. Na przykład, jeśli masz e-maile w adresach.txt, będzie to:
for i in `cat direcciones.txt`;
do
mail -s "Este es el asunto del correo" $i < nota.pdf
done
Dzięki kolego, skrypt działa świetnie.
Gdzie jest skrypt, jeśli możesz mi pomóc
Czy możesz podzielić się przykładami ????