Получение email сообщений
Статья рассматривает способы получения email-сообщений из своих программ или скриптов.
linux
правитьfetchmail
правитьПрограмма может запускаться по требованию или как домен. Запустить программу по требованию
fetchmail -v
запустить в режиме демона:
fetchmail -d 10 -L '~/fetchmail.log'
Чтобы сообщения не удалялись с сервера (а помечались прочитанными) надо добавить флаг -k.
Для программы создаётся конфиг-файл
/home/user/.fetchmailrc
В конфиг-файле указываются настройки учётных записей
poll pop.user.ru proto pop3 port 110 user "iAmUser" pass "myPasswjjj" mda "/home/user/scripts/mail_client.py %T"
mda - это программа, куда fetchmail будет отдавать тексты писем. Информация передаётся через stdout (он же pipe). Программа для сохранения текста писем будет выглядеть очень просто:
from uuid import uuid4
a = open( '/home/user/scripts/tmp/'+uuid4().hex+'.txt', 'wb')
while True:
try:
a.write( raw_input() )
a.write( '\n' )
except EOFError:
break
a.close()