main img

Открыть "Как сделать .exe файл из программы на Python"

PyInstaller

мощный инструмент для упаковки Python-приложений в исполняемые файлы. Параметры для создания исполняемого файла зависят от конкретного проекта, но есть несколько общих рекомендаций, которые помогут оптимизировать процесс сборки.

Основные параметры:

  1. --onefile: Собирает всё в один исполняемый файл.
  2. --noconsole: Отключает консольное окно (для GUI-приложений).
  3. --icon: Устанавливает иконку для исполняемого файла.
  4. --add-data: Добавляет дополнительные данные (например, файлы конфигурации).
  5. --hidden-import: Явно указывает на скрытые зависимости.
  6. --upx-dir: Указывает на директорию с UPX (инструментом для сжатия исполняемых файлов).

Пример команды с оптимальными параметрами:

pyinstaller --onefile --noconsole --icon=path/to/icon.ico --add-data="data_dir;data_dir" --hidden-import=hidden_module script.py

Объяснение параметров:

  • --onefile: Собирает всё в один исполняемый файл.
  • --noconsole: Подходит для GUI-приложений, чтобы не показывалась консоль.
  • --icon=path/to/icon.ico: Устанавливает иконку для исполняемого файла.
  • --add-data="data_dir;data_dir": Включает дополнительную директорию данных. В Windows используется ;, а в Linux :.
  • --hidden-import=hidden_module: Явно добавляет зависимости, которые не удалось автоматически определить.

Некоторые дополнительные параметры, которые могут быть полезны:

  • --name=имя: Задает имя исполняемого файла.
  • --clean: Удаляет временные файлы перед сборкой.
  • --upx-dir=path/to/upx: Указывает путь к UPX для сжатия исполняемых файлов, что помогает уменьшить их размер.

Пример полной команды:

pyinstaller --onefile --noconsole --icon=icon.ico --add-data="config.json;." --hidden-import=requests --clean --name=my_application --upx-dir=/path/to/upx script.py

Эти параметры помогут создать оптимальный исполняемый файл для вашего проекта.

Установка PyInstaller

Установка PyInstaller проста и выполняется с помощью pip, стандартного пакетного менеджера для Python. Для установки PyInstaller выполните следующую команду:

pip install pyinstaller

Если у вас возникнут проблемы с правами доступа, используйте --user для установки в локальную директорию пользователя:

pip install --user pyinstaller

После установки вы можете проверить, что PyInstaller установлен правильно, вызвав команду pyinstaller в командной строке:

pyinstaller --version

Это должно вывести текущую версию PyInstaller, подтверждая, что установка прошла успешно.

 

Изменена: 30 Май 2024

Открыть "Big Sur ошибка "У вас нет разрешения на открытие программы""

На данную ошибку есть рекомендации от Apple, но если они не помогли, можно попробовать  данный способ.

 

 
Как поставить HomeBrew

Выполняем установку пакета UPX через homebrew.

UPX - это бесплатный, переносимый, расширяемый, высокопроизводительный упаковщик исполняемых файлов для нескольких исполняемых форматов.

brew install upx 

Дальше выполняем команду:

(у меня Help - это имя приложения, Вам надо будет заменить на своё имя приложения, как оно у Вас называется в "Программах")

sudo upx -d /Applications/Help.app/Contents/MacOS/Help

Если все успешно прошло, появиться вот такое окно.

Все можно открывать Ваше приложение обычным способом.

 

Изменена: 30 Ноябрь 2020

Открыть "Вход с помощью электронной подписи отключен"

    ЕСИА (Единая система идентификации и аутентификации) — «универсальный ключ» к ресурсам электронного правительства во всей России. ЕСИА предоставляет пользователю единую учетную запись для получения электронных госуслуг и сервисов.

Например:

Вход без регистрации на сайты государственных и коммерческих организаций
Получайте госуслуги через вашу учетную запись на любом ресурсе, где есть авторизация через ЕСИА:
портал Госуслуг
Пенсионный фонд России
Wi-Fi в метро Москвы
ФНС России
сайт Мэра Москвы
Российская общественная инициатива
ГИС ЖКХ
Работа в России — общероссийская база вакансий

 

Но по умолчанию, после того как Вы прошли регистрацию на ГОСУСЛУГАХ у Вас авторизация по ключу отключена и если у вас обозреватель интернета настроен, то при выборе вашей подписи Вы получите вот такую ошибку "Вход с помощью электронной подписи отключен".

В Данной инструкции объяснено как включить аутентификацию через ЕСИА по средствам Вашей электронной подписи.

В данном окне нажимаем на кнопку "Перейти к настройкам"

Входим под своими учетными данными.

 

Откроется редактирование профиля на ЕСИА, надо открыть "Настройки учетной записи"

Выбираем слева "Включить вход с помощью электронной подписи"

Но помните! Если у Вас нет электронной подписи, то в целях безопастности Вашей учётной записи не включайте опцию входа по электронной подписи.

Если подпись у Вас есть, то вводим Ваш пароль от ГОСУСЛУГ и нажимаем кнопку "Включит".

Когда у вас включена опция входа по электронной подписи, у Вас в настройках будет надпись "Выключить вход с помощью электронной подписи"

 

Изменена: 31 Октябрь 2020

Открыть "Работа с КриптоПро CSP в MacOS. Работа с электронной подписью в MacOS. Настройка MacOS для работы на Федеральной налоговой службы  и портале Госуслуги."

Работа с КриптоПро CSP в MacOS.

Работа с электронной подписью в MacOS.

Настройка MacOS для работы на Федеральной налоговой службы

Настройка MacOS для работы на портале Госуслуги

Сейчас будет приведена общая информация. Настройка для работы на портале nalog.ru и портале Госуслуг описана ниже.

Рассматриваемая конфигурация:

- macOS 10.15 Catalina (в других поддерживаемых версиях macOS настройки аналогичны),

- КриптоПро CSP 5.0 (Сертифицированные версии доступны после регистрации)

- КриптоПро ЭЦП Browser plug-in 2.0.(страница загрузки)

Страница настроек КриптоПро ЭЦП Browser plug-in 2.0     /etc/opt/cprocsp/trusted_sites.html 

Замечания:

Чтобы открыть программу от несертифицированного разработчика в обход защиты Gatekeeper, нажмите на ярлыке правой клавишей мыши (либо левой клавишей мыши в сочетании с клавишей Control, либо тапнув двумя пальцами по трекпаду), и выберите опцию Открыть. Gatekeeper предупредит, что приложение может содержать вирусы, но позволит его запустить.

Что бы отключить проверку Gatekeeper полностью можно воспользоваться инструкцией.

 

Поддерживаемые ключевые носители:

  • Флеш-накопитель;
  • Жесткий диск компьютера, так же HDIMAGE которые хранятся в /var/opt/cprocsp/keys/'whoami' (возможно еще по этому пути /opt/cprocsp/keys/'whoami' где whoami это имя пользователя);
  • Рутокен (для Рутокен S необходима установка драйвера (для Mojave и Catalina, для High Sierra и старше) и перезагрузка компьютера, при использовании Рутокен S возможны проблемы);
  • ESMART Token;
  • Другие менее распространенные виды токенов;

Внимание: в КриптоПро CSP 4.0 ключевые носители eToken и JaCarta не поддерживаются (JaCarta поддерживается в КриптоПро CSP 5.0).

 
Информация: Возможность работы на MacOS с ЭЦП на порталах нужно уточнять в технической поддержке порталов.
 
Как посмотреть имя пользователя

Процесс установки программы КриптоПро CSP 5.0 в Apple MacOS:

Установка КриптоПро ЭЦП Browser plug-in в Apple MacOS:

Для работы на портале nalog.ru необходимо:

иметь в наличии квалифицированный сертификат электронной подписи и соответствующий ему ключ,

- при использовании сертификата по ГОСТ Р 34.10-2012 выполнить команды ( скопировать не меня текст ) :

sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.1!3' -add string 'Name' 'GOST R 34.10-2012 256 bit'
sudo /opt/cprocsp/sbin/cpconfig -ini '\cryptography\OID\1.2.643.7.1.1.1.2!3' -add string 'Name' 'GOST R 34.10-2012 512 bit'
 
Установка Головного Удостоверяющего Центра и удостоверяющего центра Минкомсвязи

При появлении строки Password: нужно ввести пароль пользователя в операционной системе macOS и нажать клавишу Enter.

- использовать браузер с поддержкой TLS сертификатов по ГОСТ Р 34.10-2012 (например, Chromium GOST),

Перед переходом по ссылке устанавливаем сертификаты в хранилище личные следующей командой:

/opt/cprocsp/bin/csptestf -absorb -certs

- входить в личный кабинет по прямой ссылке:

https://lkul.nalog.ru - для юридических лиц,

https://lkipgost2.nalog.ru/lk - для индивидуальных предпринимателей. (раньше была ссылка https://lkipgost.nalog.ru/lk )

Чтобы удалить выбранный ранее сертификат электронной подписи из кеша Chromium GOST перезапустите браузер.

 
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
 
ERR_SSL_PROTOCOL_ERROR

При использовании в качестве ключевого носителя облачного токена или простого USB-флеш накопителя Chromium GOST необходимо запускать из Терминала с помощью команды:

/Applications/Chromium-Gost.app/Contents/MacOS/Chromium-Gost --no-sandbox


Для работы на портале Госуслуг необходимо:

Если не установлен, то скачать и поставить IFCPlugin.pkg - это плагин для работы на портале государственных услуг.

Скачать файл конфигурации для IFCPlugin в директорию Загрузки.

Подключить ключевой носитель (флеш-накопитель, Рутокен, ESMART token и т.д.).

Выполнить в терминале команды (при появлении строки Password: нужно ввести пароль пользователя в операционной системе macOS и нажать клавишу Enter):

sudo cp ~/Downloads/ifc.cfg /Library/Internet\ Plug-Ins/IFCPlugin.plugin/Contents/ifc.cfg
/opt/cprocsp/bin/csptestf -absorb -certs -autoprov

Для  Chromium GOST также выполнить в терминале команду (Важно, что бы Chromium GOST был в "Программах"):

sudo cp /Library/Google/Chrome/NativeMessagingHosts/ru.rtlabs.ifcplugin.json /Library/Application\ Support/Chromium/NativeMessagingHosts

Проверить в используемом браузере (Mozilla Firefox, Google Chrome или Chromium GOST), что включено расширение - Расширение для плагина Госуслуг.

Расширение для Google Chrome/Chromium GOST.

На странице входа на портал Госуслуг:

  1. Выбираем "Вход с помощью электронной подписи";
  2. Если появляется ошибка "Вход с помощью электронной подписи отключен", то действуем по этой инструкции ссылка.
  3. Нажимаем на кнопку "Готово";
  4. Выбрать нужный сертификат электронной подписи;
  5. В окне Ввод пин-кода нажать кнопку "Продолжить";
  6. При возникновении окна CryptoPro CSP ввести пин-код для ключевого контейнера в поле Password: и нажать кнопку "OK".

Основные команды

Указанные ниже действия выполняются в Терминале, как открыть терминал показано ниже:

Открыть приложение Терминал можно через Finder >пункт меню Переход>Утилиты>Терминал.

 

  • Просмотр и установка сертификатов с носителя ключа в хранилище "Личные"( My ):
    • /opt/cprocsp/bin/csptestf -absorb -certs
  • Установить сертификат из файла в хранилище личные (MY):
    • /opt/cprocsp/bin/certmgr -inst -store my -f ~/downloads/name.cer
  • Установить сертификат из файла в хранилище промежуточных центров сертификации (CA):
    • /opt/cprocsp/bin/certmgr -inst -store ca -f ~/downloads/name.cer
  • Установить сертификат из файла в хранилище доверенных корневых издателей (ROOT) (команда выполняется через sudo и требует ввода пароля):
    • sudo /opt/cprocsp/bin/certmgr -inst -store root -f ~/downloads/name.cer
  • Просмотр сертификатов в хранилище личные (MY):
    • /opt/cprocsp/bin/certmgr -list -store my
      /opt/cprocsp/bin/certmgr -list -store my | grep -iE '^Serial|^Subject'
  • Просмотр сертификатов в хранилище промежуточных центров сертификации (CA):
    • /opt/cprocsp/bin/certmgr -list -store ca
      /opt/cprocsp/bin/certmgr -list -store ca | grep -iE '^Serial|^Subject'
  • Просмотр сертификатов в хранилище доверенных корневых издателей (ROOT):
    • /opt/cprocsp/bin/certmgr -list -store root
      /opt/cprocsp/bin/certmgr -list -store root | grep -iE '^Serial|^Subject'
  • Очистить хранилище личные (MY) (после параметра -dn пишем один из параметров вашего сертификата: CN, E и т.д.):
    • /opt/cprocsp/bin/certmgr -delete -store my -all
      /opt/cprocsp/bin/certmgr -delete -store my -dn CN=CNExample
  • Очистить хранилище промежуточных центров сертификации (CA) (после параметра -dn пишем один из параметров вашего сертификата: CN, E и т.д.):
    • /opt/cprocsp/bin/certmgr -delete -store ca -all
      /opt/cprocsp/bin/certmgr -delete -store ca -dn CN=CNExample
  • Очистить хранилище доверенных корневых издателей (ROOT) (команда выполняется через sudo и требует ввода пароля) (после параметра -dn пишем один из параметров вашего сертификата: CN, E и т.д.):
    • sudo /opt/cprocsp/bin/certmgr -delete -store root -all
      sudo /opt/cprocsp/bin/certmgr -delete -store root -dn CN=CNExample
  • Копирование контейнеров ключей (что бы просмотреть, что копировать можно выполнить /opt/cprocsp/bin/csptest -keyset -verifycontext -enum -unique или  /opt/cprocsp/bin/csptestf -absorb -certs ):
    • /opt/cprocsp/bin/csptestf -keyc -contsrc 'откуда и что копируем' -contdest 'куда и имя копии'
      
      /opt/cprocsp/bin/csptestf -keyc -contsrc 'SCARD\rutoken_lt_99999999\0A00' -contdest '\\.\HDIMAGE\123'
      /opt/cprocsp/bin/csptestf -keyc -contsrc 'HDIMAGE\\123.000' -contdest '\\.\FLASH\key'
  • Удаление контейнера ключа:​​
    • /opt/cprocsp/bin/csptestf -passwd -cont '\\.\HDIMAGE\123' -deletek
  • Проверка установленной лицензии КриптоПро CSP:
    • /opt/cprocsp/sbin/cpconfig -license -view
    • В ответ Вы получите введенную лицензию, ее срок и тип.
  • Ввод лицензии КриптоПро CSP (сохраняем все "-" при вводе серийного номера):
    • sudo /opt/cprocsp/sbin/cpconfig -license -set xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
  • Какие алгоритмы установленыa (ГОСТ 2001, 2012, ...):
    • /opt/cprocsp/sbin/cpconfig -defprov -view_type
  • Просмотреть все алгоритмы, одного типа:
    • /opt/cprocsp/sbin/cpconfig -defprov -view -provtype 81
  • Информация о ключе:
    • /opt/cprocsp/bin/csptest -keyset -container 'SCARD\rutoken_lt_99999999\0A00\BABA' -info
  • Экспорт сертификата в файл:
    • /opt/cprocsp/bin/certmgr -export -cert -store my -dest ~/Downloads/123.cer -dn CN=CNExample
  • Экспорт ключа в контейнер PFX:
    • /opt/cprocsp/bin/certmgr -export -pfx -dn 'CN=workite.ru' -dest ~/Downloads/key.pfx -provtype 81
  • Импорт сертификата и закрытого ключа из контейнера PFX:
    • /opt/cprocsp/bin/certmgr -inst -pfx -file ~/Downloads/key.pfx
  • Перечисление всех смарт карт 
    • /opt/cprocsp/bin/csptest -card -enum -v -v

  • Перечисление контейнеров пользователя:
    • /opt/cprocsp/bin/csptest -keyset -enum_cont -verifycontext -fqcn
  • Перечисление контейнеров компьютера:
    • /opt/cprocsp/bin/csptest -keyset -enum_cont -verifycontext -fqcn -machinekeys
  • Просмотр списка настроенных ДСЧ:
    • /opt/cprocsp/sbin/cpconfig -hardware rndm -view
  •  Для добавления консольного БиоДСЧ:
    • /opt/cprocsp/sbin/cpconfig -hardware rndm -add bio_tui -level 5 -name "Console BioRNG"
  • Для добавления графического БиоДСЧ:
    • /opt/cprocsp/sbin/cpconfig -hardware rndm -add bio_gui -level 4 -name "GUI BioRNG"

 

Использую sudo,  при вводе пароля, символы не отображаются.

 

Изменена: 08 Апрель 2020

Copyright 2018 Workite.ru
Главная страница | Карта сайта | Политика конфиденциальности и условия
Копирование материалов сайта разрешено лишь при указании активной, прямой ссылки на источник.