@Whnoy

Почему программа на Пайтон перезапускается каждые 2-3 секунды после сборки Pyinstaller на Mac OS на Arm?

У меня возникла проблемма. Я пробовал упаковать программу на Пайтоне с помощью pyinstaller.:
from PIL import Image
from requests import *
from urllib.request import urlopen

def main():
        keys = {'api_key': "Demo_Key"}

        nasa = get('https://api.nasa.gov/planetary/apod?api_key='Demo_Key')
        nlist = nasa.json()

        url = nlist['url']

        print(url)

        image = Image.open(urlopen(url))
        image.show()
        image.close()

if __name__ == '__main__':
        main()

Проблема в том, что при сборке с параметрами --noconsole/-windowed после запуска программа сначала отрабатывает, как надо, а после процесс запускается опять (те создается новый процесс с другим номером). В случае с -w запускается 2 раза. Никаких ошибок pyinstaller не выдает. Я копался в интернете несколько часов, но так и не нашел проблемы
  • Вопрос задан
  • 121 просмотр
Пригласить эксперта
Ответы на вопрос 1
@DDV23
Биокибернетик
на Mac OS --windowed (--noconsole) может повторно инициализировать процесс запуска.

Самый простой вариант
добавить проверку на __name__ == '__main__',
для предотвращения повторного запуска main()

если сработает значит оно:)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы