webbrowser
— Удобный контроллер веб-браузера¶
Исходный код: Lib/webbrowser.py
Модуль webbrowser
обеспечивает интерфейс высокого уровня, позволяющий
пользователям просматривать веб-документы. В большинстве случаев, простой вызов
функции open()
из этого модуля сделает все правильно.
В Unix графические браузеры предпочтительны в разделе X11, но текстовые браузеры будут используемый, если графические браузеры недоступны или X11 дисплей недоступен. При используемый браузеров в текстовом режиме вызывающий процесс блокируется до тех пор, пока пользователь не выйдет из браузера.
Если переменная среды BROWSER
существует, она интерпретируется как
os.pathsep
-separated список браузеров, чтобы попытаться опередить настройки
платформы по умолчанию. Если значение части списка содержит строка
%s
, то она интерпретируется как командная строка браузера литерал
для используемый с URL-адресом аргумента, заменяющим %s
; если деталь не
содержит %s
, она просто интерпретируется как имя запускаемого браузера.
[1]
Для платформ, отличных от Unix, или когда удаленный браузер доступен в Unix, процесс управления не будет ждать, пока пользователь закончит работу с браузером, а позволит удаленному браузеру поддерживать собственные окна на дисплее. Если удаленные браузеры недоступны в Unix, процесс управления запустит новый браузер и будет ждать.
Скрипт webbrowser может быть используемый в качестве интерфейса командной строки
для модуля. В качестве аргумента он принимает URL-адрес. Он принимает следующие
необязательные параметры: -n
по возможности открывает URL-адрес в новом
окне браузера; -t
открывает URL-адрес на новой странице браузера
(«tab»). Варианты, естественно, взаимоисключающие. Пример использования:
python -m webbrowser -t "http://www.python.org"
Определено следующее исключение:
-
exception
webbrowser.
Error
¶ Исключение возникает при возникновении ошибки управления браузером.
Определены следующие функции:
-
webbrowser.
open
(url, new=0, autoraise=True)¶ Отображение url с помощью браузера по умолчанию. Если new равно 0, по возможности url открывается в том же окне браузера. Если new равно 1, по возможности открывается новое окно браузера. Если new равно 2, по возможности открывается новая страница браузера («tab»). Если autoraise
True
, окно поднимается по возможности (обратите внимание, что во многих оконных менеджерах это происходит независимо от настройки этой переменной).Обратите внимание, что на некоторых платформах, пытаясь открыть имя файла с помощью этой функции, может работать и запускать связанную с операционной системой программу. Однако это не поддерживается и не переносится.
Raises an auditing event
webbrowser.open
with argumenturl
.
-
webbrowser.
open_new
(url)¶ Открыть url в новом окне браузера по умолчанию, если это возможно, в противном случае открыть url в единственном окне браузера.
-
webbrowser.
open_new_tab
(url)¶ Открыть url на новой странице («tab») браузера по умолчанию, если это возможно, в противном случае эквивалентно
open_new()
.
-
webbrowser.
get
(using=None)¶ Возвращает объект контроллера для using типа браузера. Если using
None
, возвращает контроллер для браузера по умолчанию, соответствующего среде вызывающего абонента.
-
webbrowser.
register
(name, constructor, instance=None, *, preferred=False)¶ Зарегистрировать тип браузера name. После регистрации типа браузера функция
get()
может возвращает контроллер для этого типа браузера. Если instance не предоставляется или являетсяNone
, constructor вызывается без параметров для создания сущность при необходимости. Если instance предоставляется, constructor никогда не будет вызываться и может бытьNone
.Установка preferred в значение
True
делает этот браузер предпочтительным результатом для вызоваget()
без аргумента. В противном случае эта точка входа полезна только в том случае, если планируется задать переменнуюBROWSER
или вызватьget()
с непустым аргументом, соответствующим имени объявленного обработчик.Изменено в версии 3.7: preferred ключевой-только параметр был добавлен.
Предопределен ряд типов браузера. В этой таблице приведены имена типов, которые
могут быть переданы функции get()
, и соответствующие экземпляры для классов
контроллеров, все из которых определены в этом модуле.
Тип имени | Имя класса | Примечание |
---|---|---|
'mozilla' |
Mozilla('mozilla') |
|
'firefox' |
Mozilla('mozilla') |
|
'netscape' |
Mozilla('netscape') |
|
'galeon' |
Galeon('galeon') |
|
'epiphany' |
Galeon('epiphany') |
|
'skipstone' |
BackgroundBrowser('skipstone') |
|
'kfmclient' |
Konqueror() |
(1) |
'konqueror' |
Konqueror() |
(1) |
'kfm' |
Konqueror() |
(1) |
'mosaic' |
BackgroundBrowser('mosaic') |
|
'opera' |
Opera() |
|
'grail' |
Grail() |
|
'links' |
GenericBrowser('links') |
|
'elinks' |
Elinks('elinks') |
|
'lynx' |
GenericBrowser('lynx') |
|
'w3m' |
GenericBrowser('w3m') |
|
'windows-default' |
WindowsDefault |
(2) |
'macosx' |
MacOSX('default') |
(3) |
'safari' |
MacOSX('safari') |
(3) |
'google-chrome' |
Chrome('google-chrome') |
|
'chrome' |
Chrome('chrome') |
|
'chromium' |
Chromium('chromium') |
|
'chromium-browser' |
Chromium('chromium-browser') |
Примечания:
- «Konqueror» является файловым менеджером для среды рабочего стола KDE для Unix и
имеет смысл использовать только при работе KDE. Какой-то способ надежного
обнаружения KDE был бы хорошим;
KDEDIR
переменной недостаточно. Следует также отметить, что имя «kfm» используемый даже при использовании команды konqueror с KDE 2 — реализации выбирается оптимальная стратегия для запуска Konqueror. - Только на платформах Windows.
- Только на платформе Mac OS X.
Добавлено в версии 3.3: Добавлена поддержка Chrome/Chromium.
Вот несколько простых примеров:
url = 'http://docs.python.org/'
# Открыть URL в новой вкладке, если окно браузера уже открыто.
webbrowser.open_new_tab(url)
# Открыть URL-адрес в новом окне, если возможно, подняв окно.
webbrowser.open_new(url)
Объекты контроллера браузера¶
Контроллеры браузера предоставляют следующие методы, которые параллельны трем функциям удобства на уровне модулей:
-
controller.
open
(url, new=0, autoraise=True)¶ Отображение url с помощью браузера, обрабатываемого этим контроллером. Если new равно 1, по возможности открывается новое окно браузера. Если new равно 2, по возможности открывается новая страница браузера («tab»).
-
controller.
open_new
(url)¶ Открыть url в новом окне браузера, обработанном этим контроллером, если это возможно, в противном случае открыть url в единственном окне браузера. Псевдоним
open_new()
.
-
controller.
open_new_tab
(url)¶ Открыть url на новой странице («tab») браузера, обрабатываемой этим контроллером, если это возможно, в противном случае эквивалентно
open_new()
.
Сноски
[1] | Исполняемые файлы, названные здесь без полного пути, будут найдены в
каталогах, указанных в переменной среды PATH .
указанных в переменной среды PATH . |