X vagy Y okokból néha be kell programoznunk cégünk szerverét egy bizonyos feladat elvégzésére, és szeretnénk tudni, hogy ezt a feladatot problémamentesen hajtották-e végre, ehhez programozzuk, hogy ha minden zökkenőmentesen zajlott, értesítsen minket ... de… ¿ Hogyan értesíthet minket a szerver?
Nagyon egyszerű, egy szkript segítségével megmondjuk Piton e-mailt küldeni nekünk, ily módon, amikor ellenőrizzük a postafiókot, elolvassuk, ha a szervernek nem volt problémája a megrendelés leadásával.
A forgatókönyv itt hagyta őket: send-email.py
A használata nagyon egyszerű, nyissa meg a terminált, írja be a következőket, és nyomja meg a gombot [Belép]:
cd $HOME/ && wget http://paste.desdelinux.net/paste/?dl=89 && mv index.html\?dl\=89 send-email.py && chmod +s send-email.py
Meghagyom, hogy milyen lenne a folyamat:
% CODE1%
Miután ez megtörtént, szerkesztenie kell a szkriptet, hogy saját adatait tegye, én úgy fogom szerkeszteni, hogy felteszem az adataimat, vagyis az innen származó adatokat.
Nyissa meg a szkriptet (send-email.py), és módosítsa ezeket az adatokat:
- az email címed@desdelinux. Net e-mailben (ebben a példában - » kzkggaara@ipichcb.rimed.cu)
- Üzenet törzse az e-mail tartalma alapján (ebben a példában - » Ez egy teszt e-mail)
- te.mailserver.cu a mail szerver által (ebben a példában - » 192.168.1.2)
- az email címed a felhasználó által (ebben a példában - » kzkggaara)
- a jelszavad jelszavához (ebben a példában - » HAHA ... igen ... biztos ... LOL)
A következőképpen néz ki: send-email.py (Módosítva)
És voila, csak az e-mail elküldése marad ... ehhez a következőket tesszük:
- python send-email.py "Ide tesszük a tárgyat" címzett@domain.com
Más szavakkal, végre kell hajtanunk a szkriptet, és át kell adnunk neki az "Subject" paramétert (vagyis azt a tárgyat, amelyet az e-mail fog venni), és azt is, hogy kinek (e-mail cím) küldjük el.
Küldök magamnak egy e-mailt, íme a példa:
% CODE2%
És most 😀
Mint láthatja, valami egészen egyszerű ... de ez bizonyos esetekben segítségünkre lehet 😉
Üdvözlet
nagyon jó .. de én valami ilyesmit szeretnék, ami Windows esetén is működik, de nem találom 🙁
Windows esetén ... mmm ... telepítenie kell a Python programot a Windows barátra: http://www.python.org/getit/windows/
a Windows számára van egy Cobian nevű eszköz, nagyon jó és intuitív
hogyan lehet engedélyezni a szkript küldését a gmail (smtp) segítségével?
Ugyanez a kérdésem: /
Tudnék:
s = SMTP ('smtp.gmail.com')
s.starttls () # Ha TLS-t használ
s.ehlo ()
Azonban ezt a hibát adja nekem:
python send-email.py "Itt tesszük a témát" aquimi@correo.com
Traceback (a legutóbbi hívás utoljára):
A "send-email.py" fájl 14. sora
s = SMTP ('smtp.gmail.com')
"/Usr/lib/python2.6/smtplib.py" fájl, 239. sor, __init__
(kód, msg) = self.connect (gazdagép, port)
A "/usr/lib/python2.6/smtplib.py" fájl 295. sora csatlakozik
self.sock = self._get_socket (host, port, self.timeout)
"/Usr/lib/python2.6/smtplib.py" fájl, 273. sor, _get_socket
return socket.create_connection ((port, gazdagép), timeout)
"/Usr/lib/python2.6/socket.py" fájl, 561. sor, a create_connection fájlban
hiba emelése, msg
socket.error: [Errno 101] A hálózat elérhetetlen
Jó, és utána programozod cronnal, és készen állsz a jelentésre: D.
Igen! hehe, sok időt takarít meg, automatizálja a dolgokat a szkriptekkel 🙂
Köszönöm a bejegyzést, érdekesnek találom, és hozzáadom a Reedyseth által idézett funkcionalitást, amelynek még egy segédprogramja van. 😉 üdvözlet kompák!
Köszönöm a megjegyzést 😀
Üdvözlet barátom.
Gaara, barátom, biztos vagyok benne, hogy ez a cikk nagyon jó, ahogy itt mindenki kiemeli, de én - NEM-PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO-NEC - TION
Mit tegyek, ha látom őket, elvágom a torkomat?
Nem lehet megnyitni ezt a linket? - » http://paste.desdelinux.net/89
Hadd kérdezzek valamit, készíthetnék egy szkriptet, hogy egy adott napon konkrét üzenetet küldhessek a központom minden felhasználójának? Azt hiszem, de te vagy a szakember, és ha ezt megerősíted, tudnál segíteni nekem egy ilyen elkészítésében?
Igen, ahhoz, hogy "valamit" tegyen egy adott napon, használnia kell crontab.
Ezután, feltételezve, hogy egy .PDF fájlt (például note.pdf) szeretne elküldeni a felhasználóknak, csak 1 e-mailre lehet elküldeni:
mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf
Ennek elküldéséhez, de nem csak egy címre, hanem még sok másra is ... meg kell adnia a címeket egy szövegfájlban (sortöréssel elválasztva), majd hurokot kell használnia mert. Például, ha az e-mail címek a address.txt fájlban vannak, a következők lennének:
for i in `cat direcciones.txt`;
do
mail -s "Este es el asunto del correo" $i < nota.pdf
done
Kösz haver, a forgatókönyv remekül működik.
Hol van a forgatókönyv, ha tudsz nekem segíteni
Ossza meg szívesen a példákat ????