Чтобы открыть сайт в браузере по умолчанию (Windows, macOS, Linux) из скрипта Python, нужно использовать команду webbrowser.open('https://ya.ru') чтобы открыть Яндекс. Не забудьте импортировать модуль webbrowser (import webbrowser). Устанавливать ничего не нужно, т.к. этот модуль уже присутствует в стандартной библиотеке Python.
Пример
Вот пример скрипта Python, который открывает следующий сайт https://mmazurenko.com
import webbrowser
webbrowser.open('https://mmazurenko.com')Новая вкладка вашего браузера по умолчанию (Chrome, Edge, Safari, FireFox — любой который установите в ОС по умолчанию) откроется отправленная аргументом функции webbrowser.open()

О модуле Webbrowser
Модуль Webbrowser это часть стандартной библиотеки Python, поэтому можно импортировать его без необходимости что-либо устанавливать дополнительно.
Также можно запустить модуль из командной строки или терминала следующей строкой:
python -m webbrowser -t "https://mmazurenko.com"
Это пригодится когда вдруг понадобится открыть сайт из командной строки ОС или из терминала (Windows, macOS, Linux). Это делает использование Python переносимым и независимым от операционной системы.
Webbrowser open()
Можно задать дополнительные аргументы, чтобы получить больше контроля над тем какая вкладка открывается с помощью нового аргумента функции webbrowser.open().
webbrowser.open(url, new=0, autoraise=True)
Аргумент new позволяет контролировать окно браузера:
- Если задать
new=0(значение по умолчанию), откроется URL в том же окне браузера. - Если задать
new=1, откроется новое окно браузера. - Если задать
new=2, откроется новая вкладка браузера.
Webbrowser Open in New Tab
Простой способ открыть URL в новой вкладке из Python скрипта вызвав webbrowser.open_new_tab() и передать строку с адресом в качестве единственного аргумента.
import webbrowser my_url = 'http://mmazurenko.com' webbrowser.open_new_tab(my_url)
Выбор браузера
Можно также передать объекту контроллера заданный браузер вызвав функцию webbrowser.get() и передав в неё тип браузера. Теперь можно вызвать open() или open_new_tab() методы объекта контроллера чтобы открыть URL в определённом браузере.
import webbrowser
webbrowser.get("firefox").open("http://mmazurenko.com")Вот поддерживаемые типы браузеров:
| Имя типа | Имя класса |
| ‘mozilla’ | Mozilla(‘mozilla’) |
| ‘firefox’ | Mozilla(‘mozilla’) |
| ‘netscape’ | Mozilla(‘netscape’) |
| ‘galeon’ | Galeon(‘galeon’) |
| ‘epiphany’ | Galeon(‘epiphany’) |
| ‘skipstone’ | BackgroundBrowser(‘skipstone’) |
| ‘kfmclient’ | Konqueror() |
| ‘konqueror’ | Konqueror() |
| ‘kfm’ | Konqueror() |
| ‘mosaic’ | BackgroundBrowser(‘mosaic’) |
| ‘opera’ | Opera() |
| ‘grail’ | Grail() |
| ‘links’ | GenericBrowser(‘links’) |
| ‘elinks’ | Elinks(‘elinks’) |
| ‘lynx’ | GenericBrowser(‘lynx’) |
| ‘w3m’ | GenericBrowser(‘w3m’) |
| ‘windows-default’ | WindowsDefault |
| ‘macosx’ | MacOSXOSAScript(‘default’) |
| ‘safari’ | MacOSXOSAScript(‘safari’) |
| ‘google-chrome’ | Chrome(‘google-chrome’) |
| ‘chrome’ | Chrome(‘chrome’) |
| ‘chromium’ | Chromium(‘chromium’) |
| ‘chromium-browser’ | Chromium(‘chromium-browser’) |
Следует добавить, что если интерпретатор Python не найдет выбранный браузер, то скрипт завершится ошибкой: webbrowser.Error: could not locate runnable browser.
Таким простым способом, можно открыть сайт в браузере из скрипта Python.
P.S. У меня почему-то вариант с выбором браузера работает только при запуске через IDLE (Python). Запуск по двойному клику по скрипту не срабатывает (Windows 10). Хотя простой запуск без выбора браузера работает.
Читайте также другие статьи о Python.