Найти в Дзене

Программирование на языке Python. Работа с Интернет. Модуль webbrowser

Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.

Управление вебраузером на Python с помощью модуля webbrowser

Модуль webbrowser отвечает только за возможность программного запуска браузера, который есть в системе, с некоторыми дополнительными возможностями.

Перечислим в начале инструментарий, который предоставляет модуль webbrowser, а потом приведём несколько полезных примеров. Следует отметить, что представленный инструментарий может слегка по-разному срабатывать в разных операционных системах и с разными браузерами. Но тут нарабатывайте опыт.

  • webbrowser.open() — открыть окно браузера с указанным URL. Кроме первого параметра URL, есть еще два не обязательных. new=0 (по умолчанию) - открыть, если возможно, в том же окне браузера, new=1 - открыть, если возможно, в новом окне браузера, new=2 - открыть, если возможно в новой вкладке браузера. autoraise=True - открыть окно, если возможно.
  • webbrowser.Error — основное исключение модуля. Рекомендуется обрабатывать исключение при работе с браузерами, в противном случае ваша программа каждый раз при возникновении ошибки будет прекращать работу.
  • webbrowser.open_new(url) — открывает указанный URL в новом окне браузера по умолчанию.
  • webbrowser.open_new_tab(url) — открывает, если возможно, указанный URL в новом окне браузера по-умолчанию.
  • webbrowser.get() — возвращает объект контроллера для указанного браузера. Параметр using позволяет указать браузер (см. таблицу ниже), если равен None, то браузер берётся по-умолчанию.
Типы браузеров и экземпляры контроллеров
Типы браузеров и экземпляры контроллеров
  • webbrowser.register() — если браузера нет в указанном списке, то с помощью данного метода можно его зарегистрировать и потом использовать (см. примеры ниже).

Пример 1. Вызов браузера по-умолчанию в новой вкладке

#!/usr/bin/python3
import webbrowser
webbrowser.open_new_tab('https://ya.ru')

Пример 2. Вызов браузера по-умолчанию в новой вкладке (второй способ)

#!/usr/bin/python3
import webbrowser
webbrowser.get().open_new_tab('https://ya.ru')

Пример 3. Вызов указанного браузера в новом окне

#!/usr/bin/python3
import webbrowser
webbrowser.get('firefox').open_new('https://ya.ru')

Один важный штрих к примеру. Если в системе нет указанного браузера, то возникнет исключение. Его бы следовало обработать. Но вы же знаете как.

Пример 4. Запуск Yandex-браузера.

Тут есть два подхода. Первый, мы делаем yandex-браузер браузером по-умолчанию. Тогда работают примеры, представленные выше. А можно зарегистрировать браузер.

#!/usr/bin/python3
import webbrowser
webbrowser.register('Yandex', None, webbrowser.GenericBrowser('/usr/bin/yandex-browser-stable'))
webbrowser.get(using='Yandex').open_new_tab('https://ya.ru')

Пример 5. Запуск поисковика Яндекс с указанием строки поиска.

#!/usr/bin/python3
import webbrowser
webbrowser.open_new_tab('https://ya.ru/search/?lr=10735&text='+"progranners's notes")

Запуск браузера по-умолчанию с поиском в Яндекс
Запуск браузера по-умолчанию с поиском в Яндекс

Пока всё.

Пишите свои предложения и замечания и занимайтесь программированием, хотя бы для поддержания уровня интеллекта.

Протестую, браузер chrome это не наш путь
Протестую, браузер chrome это не наш путь