🕷️ Crawler Inspector

URL Lookup

Direct Parameter Lookup

Raw Queries and Responses

1. Shard Calculation

Query:
Response:
Calculated Shard: 78 (from laksa046)

2. Crawled Status Check

Query:
Response:

3. Robots.txt Check

Query:
Response:

4. Spam/Ban Check

Query:
Response:

5. Seen Status Check

ℹ️ Skipped - page is already crawled

📄
INDEXABLE
CRAWLED
2 months ago
🤖
ROBOTS ALLOWED

Page Info Filters

FilterStatusConditionDetails
HTTP statusPASSdownload_http_code = 200HTTP 200
Age cutoffPASSdownload_stamp > now() - 6 MONTH2.3 months ago
History dropPASSisNull(history_drop_reason)No drop reason
Spam/banPASSfh_dont_index != 1 AND ml_spam_score = 0ml_spam_score=0
CanonicalPASSmeta_canonical IS NULL OR = '' OR = src_unparsedNot set

Page Details

PropertyValue
URLhttps://docs-python.ru/standart-library/modul-zipapp-python/sozdanie-ispolnjaemogo-fajla-windows/
Last Crawled2026-02-05 22:24:48 (2 months ago)
First Indexed2023-06-08 06:31:15 (2 years ago)
HTTP Status Code200
Meta TitleСоздание исполняемого Python файла для Windows
Meta DescriptionВ Windows регистрация расширения .pyz не является обязательной и кроме того, есть определенные моменты, при которых зарегистрированные расширения не распознаются "прозрачно".
Meta Canonicalnull
Boilerpipe Text
В Windows регистрация расширения .pyz не является обязательной и кроме того, есть определенные моменты, при которых зарегистрированные расширения не распознаются "прозрачно". Самый простой пример команда subprocess.run(['myapp']) не найдет приложение и нужно явно указать расширение .pyz . Поэтому в Windows часто предпочтительнее из zipapp создать исполняемый файл . Это относительно просто, хотя для этого нужен компилятор языка Си. Основной подход основан на том факте, что к zip-файлам могут добавляться произвольные данные и к файлам exe в Windows так же могут добавляться произвольные данные. Поэтому, создав подходящий модуль запуска и прикрепив файл приложения .pyz к его концу, можно получить исполняемый файл, который будет нормально работать в Windows. Подходящий модуль запуска может быть таким : #define Py_LIMITED_API 1 #include "Python.h" #define WIN32_LEAN_AND_MEAN #include <windows.h> #ifdef WINDOWS int WINAPI wWinMain ( HINSTANCE hInstance , /* Обращение к текущему экземпляру */ HINSTANCE hPrevInstance , /* Обращение к предыдущему экземпляру */ LPWSTR lpCmdLine , /* Указатель на командную строку */ int nCmdShow /* Показать состояние окна */ ) #else int wmain () #endif { wchar_t ** myargv = _alloca (( __argc + 1 ) * sizeof ( wchar_t * )); myargv [ 0 ] = __wargv [ 0 ]; memcpy ( myargv + 1 , __wargv , __argc * sizeof ( wchar_t * )); return Py_Main ( __argc + 1 , myargv ); } Если определить препроцессор обработки окон WINDOWS, это сгенерирует исполняемый файл GUI, а без него - исполняемый консольный файл. Чтобы скомпилировать исполняемый файл, можно либо просто использовать стандартные инструменты командной строки MSVC , либо воспользоваться тем, что distutils знает, как скомпилировать исходный код Python: from distutils.ccompiler import new_compiler import distutils.sysconfig import sys import os from pathlib import Path def compile ( src ): src = Path ( src ) cc = new_compiler () exe = src . stem cc . add_include_dir ( distutils . sysconfig . get_python_inc ()) cc . add_library_dir ( os . path . join ( sys . base_exec_prefix , 'libs' )) # First the CLI executable objs = cc . compile ([ str ( src )]) cc . link_executable ( objs , exe ) # Now the GUI executable cc . define_macro ( 'WINDOWS' ) objs = cc . compile ([ str ( src )]) cc . link_executable ( objs , exe + 'w' ) if __name__ == "__main__" : compile ( "zastub.c" ) В результате запускается «Limited ABI», поэтому он будет работать без изменений с любой версией Python 3.x. Все, что ему нужно, это чтобы Python python3.dll был в PATH пользователя. Для полностью автономного дистрибутива вы можете собрать файл инсталятора install.exe , в котором будут находится дистрибутив Python вместе с приложением, что будет работать на любом ПК с соответствующей архитектурой.
Markdown
[**Python3**](https://docs-python.ru/ "Python3, наиболее полный справочник/самоучитель.") - [Справочник](https://docs-python.ru/tutorial/ "Справочник по языку Python3 на русском языке") - [Библиотека](https://docs-python.ru/standart-library/ "Документация по стандартной библиотеки языка Python3") - [Пакеты](https://docs-python.ru/packages/ "Сторонние популярные пакеты и модули") - [Технологии](https://docs-python.ru/other/ "Cмежные технологии") - 🌙 - [Telegram](https://t.me/docs_python_ru "Telegram-канал сайта docs-python.ru") - [Поиск](https://docs-python.ru/search/ "Поиск по сайту docs-python.ru") - Контакты Сообщить об ошибке. # Создание исполняемого Python файла для Windows 1. [Стандартная библиотека Python](https://docs-python.ru/standart-library/ "Стандартная библиотека Python") 2. [Модуль zipapp в Python, исполняемые zip-архивы](https://docs-python.ru/standart-library/modul-zipapp-python/ "Исполняемые zip-архивы Python") 3. Создание исполняемого Python файла для Windows В Windows регистрация [расширения `.pyz`](https://docs-python.ru/standart-library/modul-zipapp-python/ "Модуль zipapp в Python, исполняемые zip-архивы.") не является обязательной и кроме того, есть определенные моменты, при которых зарегистрированные расширения не распознаются "прозрачно". Самый простой пример команда `subprocess.run(['myapp'])` не найдет приложение и нужно явно указать расширение `.pyz`. Поэтому [в Windows часто предпочтительнее из `zipapp` создать исполняемый файл](https://docs-python.ru/standart-library/modul-zipapp-python/sozdanie-ispolnjaemogo-fajla-windows/ "Создание исполняемого Python файла для Windows."). Это относительно просто, хотя для этого нужен компилятор языка Си. Основной подход основан на том факте, что к zip-файлам могут добавляться произвольные данные и к файлам `exe` в Windows так же могут добавляться произвольные данные. Поэтому, создав подходящий модуль запуска и прикрепив файл [приложения `.pyz`](https://docs-python.ru/standart-library/modul-zipapp-python/ "Модуль zipapp в Python, исполняемые zip-архивы.") к его концу, можно получить исполняемый файл, который будет нормально работать в Windows. *Подходящий модуль запуска может быть таким*: ``` #define Py_LIMITED_API 1 #include "Python.h" #define WIN32_LEAN_AND_MEAN #include <windows.h> #ifdef WINDOWS int WINAPI wWinMain( HINSTANCE hInstance, /* Обращение к текущему экземпляру */ HINSTANCE hPrevInstance, /* Обращение к предыдущему экземпляру */ LPWSTR lpCmdLine, /* Указатель на командную строку */ int nCmdShow /* Показать состояние окна */ ) #else int wmain() #endif { wchar_t **myargv = _alloca((__argc + 1) * sizeof(wchar_t*)); myargv[0] = __wargv[0]; memcpy(myargv + 1, __wargv, __argc * sizeof(wchar_t *)); return Py_Main(__argc+1, myargv); } ``` Если определить препроцессор обработки окон WINDOWS, это сгенерирует исполняемый файл GUI, а без него - исполняемый консольный файл. Чтобы скомпилировать исполняемый файл, можно либо просто использовать стандартные инструменты командной строки `MSVC`, либо воспользоваться тем, что `distutils` знает, как скомпилировать исходный код Python: ``` from distutils.ccompiler import new_compiler import distutils.sysconfig import sys import os from pathlib import Path def compile(src): src = Path(src) cc = new_compiler() exe = src.stem cc.add_include_dir(distutils.sysconfig.get_python_inc()) cc.add_library_dir(os.path.join(sys.base_exec_prefix, 'libs')) # First the CLI executable objs = cc.compile([str(src)]) cc.link_executable(objs, exe) # Now the GUI executable cc.define_macro('WINDOWS') objs = cc.compile([str(src)]) cc.link_executable(objs, exe + 'w') if __name__ == "__main__": compile("zastub.c") ``` В результате запускается «Limited ABI», поэтому он будет работать без изменений с любой версией Python 3.x. Все, что ему нужно, это чтобы Python `python3.dll` был в `PATH` пользователя. Для полностью автономного дистрибутива вы можете собрать файл инсталятора `install.exe`, в котором будут находится дистрибутив Python вместе с приложением, что будет работать на любом ПК с соответствующей архитектурой. #### Содержание раздела: - [КРАТКИЙ ОБЗОР МАТЕРИАЛА.](https://docs-python.ru/standart-library/modul-zipapp-python/brief-description/ "Краткий обзор раздела: Модуль zipapp в Python, исполняемые zip-архивы") - [Интерфейс командной строки модуля zipapp](https://docs-python.ru/standart-library/modul-zipapp-python/interfejs-komandnoj-stroki-modulja-zipapp/ "Создание исполняемого архива Python с использованием командной строки") - [Функции create\_archive() модуля zipapp](https://docs-python.ru/standart-library/modul-zipapp-python/funktsii-create-archive-modulja-zipapp/ "Программное создание архива приложения Python") - [Функция get\_interpreter() модуля zipapp](https://docs-python.ru/standart-library/modul-zipapp-python/funktsija-get-interpreter-modulja-zipapp/ "Узнать интерпретатор, используемый архивом приложения") - [Тонкости распространения исполняемых приложений Python](https://docs-python.ru/standart-library/modul-zipapp-python/tonkosti-rasprostranenija-ispolnjaemyh-prilozhenij/ "Выбор интерпретатора для автономных приложений Python") - [Автономное приложение на Python с помощью zipapp](https://docs-python.ru/standart-library/modul-zipapp-python/avtonomnoe-prilozhenie-pomoschju-zipapp/ "Создание автономных приложений с помощью zipapp") - [Создание исполняемого Python файла для Windows](https://docs-python.ru/standart-library/modul-zipapp-python/sozdanie-ispolnjaemogo-fajla-windows/ "Создание исполняемого Python файла для Windows") Вверх [DOCS-Python.ru](https://docs-python.ru/ "Справочная документация по языку Python3.")™, 2026 г. (Внимание\! При копировании материала ссылка на источник обязательна) [@docs\_python\_ru](https://t.me/docs_python_ru "Telegram-канал сайта docs-python.ru") ![](https://mc.yandex.ru/watch/67309303)
Readable Markdown
В Windows регистрация [расширения `.pyz`](https://docs-python.ru/standart-library/modul-zipapp-python/ "Модуль zipapp в Python, исполняемые zip-архивы.") не является обязательной и кроме того, есть определенные моменты, при которых зарегистрированные расширения не распознаются "прозрачно". Самый простой пример команда `subprocess.run(['myapp'])` не найдет приложение и нужно явно указать расширение `.pyz`. Поэтому [в Windows часто предпочтительнее из `zipapp` создать исполняемый файл](https://docs-python.ru/standart-library/modul-zipapp-python/sozdanie-ispolnjaemogo-fajla-windows/ "Создание исполняемого Python файла для Windows."). Это относительно просто, хотя для этого нужен компилятор языка Си. Основной подход основан на том факте, что к zip-файлам могут добавляться произвольные данные и к файлам `exe` в Windows так же могут добавляться произвольные данные. Поэтому, создав подходящий модуль запуска и прикрепив файл [приложения `.pyz`](https://docs-python.ru/standart-library/modul-zipapp-python/ "Модуль zipapp в Python, исполняемые zip-архивы.") к его концу, можно получить исполняемый файл, который будет нормально работать в Windows. *Подходящий модуль запуска может быть таким*: ``` #define Py_LIMITED_API 1 #include "Python.h" #define WIN32_LEAN_AND_MEAN #include <windows.h> #ifdef WINDOWS int WINAPI wWinMain( HINSTANCE hInstance, /* Обращение к текущему экземпляру */ HINSTANCE hPrevInstance, /* Обращение к предыдущему экземпляру */ LPWSTR lpCmdLine, /* Указатель на командную строку */ int nCmdShow /* Показать состояние окна */ ) #else int wmain() #endif { wchar_t **myargv = _alloca((__argc + 1) * sizeof(wchar_t*)); myargv[0] = __wargv[0]; memcpy(myargv + 1, __wargv, __argc * sizeof(wchar_t *)); return Py_Main(__argc+1, myargv); } ``` Если определить препроцессор обработки окон WINDOWS, это сгенерирует исполняемый файл GUI, а без него - исполняемый консольный файл. Чтобы скомпилировать исполняемый файл, можно либо просто использовать стандартные инструменты командной строки `MSVC`, либо воспользоваться тем, что `distutils` знает, как скомпилировать исходный код Python: ``` from distutils.ccompiler import new_compiler import distutils.sysconfig import sys import os from pathlib import Path def compile(src): src = Path(src) cc = new_compiler() exe = src.stem cc.add_include_dir(distutils.sysconfig.get_python_inc()) cc.add_library_dir(os.path.join(sys.base_exec_prefix, 'libs')) # First the CLI executable objs = cc.compile([str(src)]) cc.link_executable(objs, exe) # Now the GUI executable cc.define_macro('WINDOWS') objs = cc.compile([str(src)]) cc.link_executable(objs, exe + 'w') if __name__ == "__main__": compile("zastub.c") ``` В результате запускается «Limited ABI», поэтому он будет работать без изменений с любой версией Python 3.x. Все, что ему нужно, это чтобы Python `python3.dll` был в `PATH` пользователя. Для полностью автономного дистрибутива вы можете собрать файл инсталятора `install.exe`, в котором будут находится дистрибутив Python вместе с приложением, что будет работать на любом ПК с соответствующей архитектурой.
Shard78 (laksa)
Root Hash13972730510020591678
Unparsed URLru,docs-python!/standart-library/modul-zipapp-python/sozdanie-ispolnjaemogo-fajla-windows/ s443