все Python 3до 3.13WindowsУдалено из стандартной библиотекипонятие
msilib
удалённые модули
Создание установщиков Windows (.msi). Только Windows. Удалён в Python 3.13, стандартной замены нет — используйте WiX Toolset.
Синтаксис
import msilib # до 3.13
msilib давал доступ к базе Windows Installer: msilib.init_database() создавал .msi, add_tables() и Directory/Feature наполняли его. Пользовался им в основном distutils для команды bdist_msi, которая ушла вместе с distutils в Python 3.12. Убран по PEP 594: внешних пользователей почти не было, а сопровождать модуль было некому. Стандартной замены нет, и What's New 3.13 не называет пакета на PyPI, который вернул бы модуль. Установщик сегодня собирают внешними инструментами: WiX Toolset, или cx_Freeze со своей командой bdist_msi, или колесо для pip вместо .msi.
Примеры
# Python 3.13+
try:
import msilib
except ModuleNotFoundError as e:
print(type(e).__name__) # → ModuleNotFoundError
# Python 3.13+
import sys
# Установщик собирают внешним инструментом, например WiX:
# wix build product.wxs -o app.msi
print(sys.version_info >= (3, 13)) # → True
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности