Задать вопрос
@SunUp
Я не волшебник, я ещё только учусь

Как открыть дефолтный браузер из приложения на wxPython без консоли?

Есть приложение с GUI на wxPython Phoenix собранное в 1 файл exe для Windows с помощью PyInstaller с параметрами:
venv\Scripts\pyinstaller app.pyw --clean --onefile --windowed --add-binary icon.ico;. --add-binary logo-iconic.ico;. --add-binary vendor.exe;. --icon logo-iconic.ico --version-file file_version_info.txt

Вопрос: как открыть дефолтный браузер с нужной страницей из этого приложения?
Что пробовал делать:
1.
wx.LaunchDefaultBrowser('https://yandex.ru')
2.
subprocess.Popen('start explorer https://yandex.ru')

3.
Решение из wiki PyInstaller
4.
Собрать exe без параметра --windowed
Первые три варианта не работают, с четвёртым всё получается, но постоянно в фоне висит ненужное окно консоли.
Загвоздка в том, что по ТЗ видимая консоль не допускается, как быть? Поддержка Linux не требуется, файл vendor.exe, включённый в бинарник запускается без консоли.
  • Вопрос задан
  • 89 просмотров
Подписаться 2 Средний Комментировать
Решение пользователя Руслан К ответам на вопрос (1)
@DollaR84
Дефолтный браузер из своих програм открываю webbrowser:
import webbrowser
webbrowser.open('https://yandex.ru')


P.S.: насчет опций pyinstaller. Не знаю равноценные это опции или нет, но я при сборке использую --noconsole, а не --windowed

Итого, webbrowser и --noconsole точно дает результат открытия браузера из приложения на wx, собранного pyinstaller, без висящего на фоне окна консоли.
Ответ написан