Запуск python-скриптов как автономное приложение

py2exe

Что-бы запустить связанные python-скрипты как автономное приложение, без установки на пользовательской машине python-интерпретатора и сопутствующих библиотек есть несколько способов. Один из них - воспользоваться py2exe, который позволяет под Windows создать исполняемый exe-файл со всеми необходимыми библиотеками.

Последнюю версию py2xe берем тут, к сожалению, последний апдейт датирован 2008 годом, но это несколько не мешает нормальному функционированию модуля. Проверенно на Python 2.7.

Для применения, в папки с приложением создаем файл setup.py. В моем случаи я создаю не консольное приложение, на что указывает переменная windows. У приложения будет своя иконка (параметр icon_resources). В переменной options указываются дополнительно используемые модули, это sqlite и pygtk. Полный список опций есть тут или можно воспользоваться gui-приложением для сборки - PyBuilder.

from distutils.core import setup
import py2exe

setup(
    windows = [{
            "script": "index.py",
            "icon_resources": [(1, "index.ico")]
        }],
    options = {"py2exe" : {
        'packages': ['sqlalchemy.databases','encodings'],
        'includes': 'cairo, pango, pangocairo, atk, gobject, gio',
    }}
)

Теперь запустим процесс сборки

python setup.py py2exe

В папке dist лежит готовый exe'шник и сопутствующие библиотеки. Так как в моем приложение используется GTK, то я дополнительно скопировал папки etc, lib, share из сборки GTK под Windows.

Получилось ~ 20 МБ на само приложение и ~ 80 МБ на GTK.

Полезные ссылки

PyInstaller

Еще один вариант сборки питоновских скриптов в отдельное приложение - PyInstaller. Заявлена поддержка Linux, Mac OS, Windows.

Полезные ссылки

Дополнительное чтиво

blog comments powered by Disqus