Сергей Супрунов
Как вы отправляете по электронной почте файл из Windows? Я, например, до
недавнего времени делал так: находил нужный файл в дереве каталогов в FAR;
набирал в командной строке «start .», чтобы открыть каталог в «Проводнике»;
щелкал по файлу правой кнопкой мыши, выбирал «Add to archive…»; затем щелкал по
полученному файлу архива и выбирал «Отправить –> Адресат»… В общем, долго и
утомительно. Теперь я делаю это из FAR командной строкой такого вида:
C:\Temp>send to me file
“Годовой отчет.doc” as year2004.zip
По заголовку статьи вы уже поняли, что такого
счастья удалось достичь благодаря языку Python, и здесь достаточно подробно
описываются предпринятые для этого шаги. Цель статьи, как обычно, не в описании
готового решения для «copy – paste», а в том, чтобы показать пути решения
подобных задач.
Итак, с чем нам предстоит столкнуться. Прежде всего
познакомимся с использованием модуля smtplib, входящего в стандартную
библиотеку Python, и нужного нам для формирования текста почтового сообщения и
собственно для отправки. Вспомним, как работать с zip-архивами. Ну и попутно
решим некоторые проблемы с кодировками, традиционно присущие Windows.