Зачем нужен PyMailGUI?

zachem nuzhen pymailgui Почтовый клиент PyMailGUI Python

Прежде чем мы начнем углубляться в программный код этой относительно крупной системы, несколько предварительных замечаний. PyMa- ilGUI — это программа на языке Python с графическим интерфейсом на базе стандартной библиотеки tkinter, реализующая обработку электронной почты на стороне клиента. Она одновременно является образцом сценария на языке Python для Интернета и масштабным действующим примером, соединяющим в себе другие, уже знакомые нам, инструменты, такие как потоки выполнения и графические интерфейсы tkinter.

Подобно программе pymail командной строки, которую мы написали в главе 13, PyMailGUI целиком действует на локальном компьютере. Электронная почта извлекается с удаленного почтового сервера и отправляется на сервер через сокеты, но сама программа и ее пользовательский интерфейс выполняются локально. По этой причине PyMail- GUI называется почтовым клиентом: подобно pymail она выполняется на локальном компьютере и взаимодействует с удаленными почтовыми серверами, используя клиентские инструменты Python. Однако, в отличие от pymail, программа PyMailGUI имеет полноценный пользовательский интерфейс: операции с электронными письмами выполняются с помощью мыши, предусматриваются дополнительные действия, такие как вложение и сохранение файлов, и обеспечивается поддержка интернационализации.

Как и многие примеры, представленные в этой книге, программа PyMa- ilGUI является также действующей, полезной программой. Я запускаю ее на самых разных компьютерах, чтобы проверить свою электронную почту, путешествуя по свету в процессе преподавания Python. Вряд ли PyMailGUI затмит в ближайшее время Microsoft Outlook, но она имеет две ключевые особенности, упоминавшиеся выше, не имеющие никакого отношения к электронной почте — переносимость и доступность для усовершенствования, которые сами по себе являются весьма привлекательными и заслуживают нескольких дополнительных слов:

Переносимость

Программа PyMailGUI может выполняться на любом компьютере, где имеются сокеты и установлен Python с библиотекой tkinter. Поскольку электронная почта пересылается с помощью библиотек Python, подойдет любое соединение с Интернетом, поддерживающее почтовый протокол (Post Office Protocol, POP) и простой протокол передачи почты (Simple Mail Transfer Protocol, SMTP). Более того, поскольку интерфейс пользователя реализован на основе библиотеки tkinter, программа PyMailGUI в неизменном виде должна действовать в Windows, X Window System (Unix, Linux) и Macintosh (классическая версия и OS X) при условии, что в этих системах также способен работать Python 3.X.

Пакет Microsoft Outlook более богат функциями, но он выполняется только в Windows, а точнее, на одной и том же компьютере с Windows. Поскольку он обычно удаляет загруженную электронную почту с сервера и сохраняет ее на компьютере клиента, вы не сможете использовать Outlook на нескольких компьютерах, не пересылая почту на все эти компьютеры. Напротив, PyMailGUI сохраняет и удаляет почту только по требованию, а потому несколько более дружелюбен по отношению к тем, кто проверяет свою почту по случаю, на произвольных компьютерах (подобно мне).

Доступность для усовершенствования

Программу PyMailGUI можно превратить во что угодно, поскольку она полностью доступна для изменений. Собственно, это по-настоящему непревзойденная характеристика PyMailGUI и любого открытого программного обеспечения типа Python в целом — так как исходные тексты PyMailGUI полностью доступны, вы способны полностью управлять дальнейшим ее развитием. С закрытыми коммерческими продуктами, такими как Outlook, такой степени управления у вас и близко быть не может — обычно вы получаете то, что солидная компания-разработчик отнесла к вашим потребностям, вместе с теми ошибками, которые могли оказаться в программе по вине разработчика.

Будучи сценарием Python, PyMailGUI является значительно более гибким инструментом. Например, я могу быстро изменить структуру интерфейса, отключить функции или добавить новые, внеся изменения в исходный программный код Python. Не нравится, как выводится список почтовых сообщений? Поменяйте несколько строк и настройте его, как вам хочется. Хотите автоматически сохранять и удалять почту при загрузке? Добавьте еще несколько строк и кнопки. Надоело видеть рекламную почту? Добавьте несколько строк обработки текста, чтобы загрузить функцию, отфильтровывающую спам. Это лишь некоторые примеры. Смысл в том, что, поскольку PyMail- GUI написан на языке сценариев высокого уровня, который легко сопровождать, такие настройки осуществляются относительно просто и могут даже доставить массу удовольствия.

В конечном счете, именно благодаря этим особенностям я действительно использую эту программу на языке Python — и как основной инструмент электронной почты, и как резервный вариант, когда почтовая система с веб-интерфейсом моего интернет-провайдера оказывается недоступной (что, как я уже говорил в предыдущей главе, обычно случается в самый неподходящий момент). Умение программировать на языке Python — навык, достойный, чтобы приобрести его.

Использованная литература:

Марк Лутц — Программирование на Python, 4-е издание, II том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий