На помощь приходит perl реализация - пакет MIME-Lite-HTML (документация). Не беда, если в системе пакетов (например Debian) не существует такого пакета - достаточно взять tar.gz-архив с сайта разработчиков, распаковать его и поместить файл HTML.pm в директорию с остальными perl-библиотеками (для Debian директория будет /usr/share/perl5/MIME/Lite).
Зависимости для MIME::Lite::HTML :
* MIME::Lite
* LWP::UserAgent
* HTML::LinkExtor
* URI::URL
Для устранения зависимостей в Debian необходимо установить пакеты libmime-lite-perl, libwww-perl и все их зависимости.
Как это работает:
1. Программа-анализатор генерирует html-отчет с картинками в локальную (закрытую) директорию на сервере (например /var/stats).
2. Приведенный ниже perl-скрипт генерирует на основе созданного htlm-отчета html-форматированное письмо, с сохранением всего содержимого (картинки), и отсылает готовое письмо по указанному адресу.
Пример perl-скрипта:
#!/usr/bin/perl -w
use MIME::Lite::HTML;
my $mailHTML = new MIME::Lite::HTML (
From => 'Charlie Root',
To => 'myemail@home.net',
IncludeType => 'cid',
Subject => 'Daily activity report',
);
$MIMEmail = $mailHTML->parse('file:///var/stats/index.htm');
$MIMEmail->send;
