PythonのwebbrowserモジュールでWebページを開く方法を徹底解説
PythonでWebベースのドキュメントをユーザーに表示したい場合、標準ライブラリの「webbrowser」モジュールが非常に便利です。このモジュールは、Webドキュメントを扱うための高水準インターフェースを提供しており、数行のコードで簡単にブラウザを操作できます。
UNIX系システムでは lynx や Netscape、Mosaic といったブラウザに対応しており、Windows や macOS では OS 標準のブラウザが自動的に使用されます。
このモジュールを使用するには、まず以下のようにインポートします。
import webbrowser
webbrowser モジュールには、複数のメソッドと例外が用意されています。それぞれ詳しく見ていきましょう。
例外:webbrowser.Error
webbrowser インターフェース内でエラーが発生した場合に送出される例外です。ブラウザの起動失敗など、モジュール操作に関する問題を捕捉するために使用します。
メソッド:webbrowser.open(url, new=0, autoraise=True)
デフォルトのWebブラウザで指定したURLを表示するメソッドです。引数 new のデフォルト値は 0 で、挙動は以下の通りです。
- new = 0:可能であれば同じブラウザウィンドウで開く
- new = 1:新しいブラウザウィンドウを開く
- new = 2:新しいブラウザタブを開く
また、autoraise=True を指定すると、可能な場合にウィンドウが前面に表示されます。
メソッド:webbrowser.get(using=None)
指定したブラウザタイプ(using)に対応するコントローラオブジェクトを返すメソッドです。using が None の場合は、デフォルトブラウザのコントローラを返します。
メソッド:webbrowser.register(name, constructor, instance=None, *, preferred=False)
独自のブラウザタイプ名を登録するためのメソッドです。登録後は get() メソッドを使ってそのブラウザのコントローラを取得できます。パラメータ instance が指定されていない場合、constructor は引数なしで呼び出されます。
あらかじめ定義されているブラウザタイプ
webbrowser モジュールには、いくつかの定義済みブラウザタイプが用意されています。以下は代表的なタイプの一覧です。これらの名前は get() メソッドに渡して使用できます。
| No. | タイプ名とクラス名 |
|---|---|
| 1 | 'mozilla' Mozilla('mozilla') |
| 2 | 'firefox' Mozilla('mozilla') |
| 3 | 'netscape' Mozilla('netscape') |
| 4 | 'opera' Opera() |
| 5 | 'links' GenericBrowser('links') |
| 6 | 'lynx' GenericBrowser('lynx') |
| 7 | 'safari' MacOSX('safari') |
| 8 | 'windows-default' WindowsDefault |
| 9 | 'chrome' Chrome('chrome') |
| 10 | 'chromium' Chromium('chromium') |
サンプルコード
ここでは、Windowsのデフォルトブラウザを取得し、指定したURLを新しいウィンドウで開く例を紹介します。
import webbrowser as browser
my_browser = browser.get('windows-default')
my_browser.open_new('https://www.tutorialspoint.com')
実行結果
スクリプトを実行すると、Windowsの既定ブラウザが起動し、指定したURLのページが新しいウィンドウで表示されます。
-
【初心者向け】Pythonのissuperset()メソッドの使い方をわかりやすく解説
はじめにこの記事では、Pythonのissuperset()メソッドについて、基本的な仕組みから実際のコード例まで詳しく解説します。issuperset()は、セット(集合)に対して使用できるメソッドで、引数として渡されたセットのすべての要素が、呼び出し元のセットに含まれているかどうかを判定します。呼び出し元のセットBが、引数のセットAのすべての要素を含んでいる場合 → True を返すセットAの要素がすべてBに含まれていない場合 → False を返すつまり、「BがAの上位集合(スーパーセット)であるかどうか」を判定するためのメソッドです。基本構文B.issuperset(A)この式は、Bが
-
クリップボードの住所からGoogleマップを自動で開くPythonスクリプトの作り方
Googleマップで特定の場所を調べたいとき、普段はブラウザを開いて検索するのが一般的です。しかし、この作業を1日に何度も繰り返すとなると、かなり面倒に感じるものです。そこで本記事では、この操作を自動化するPythonスクリプトをご紹介します。スクリプトを実行すると、ブラウザが自動的に起動し、指定した場所のGoogleマップがすぐに表示される仕組みです。 準備:pyperclipのインストール このスクリプトでは、クリップボードを扱うために「pyperclip」パッケージを使用します。標準ライブラリには含まれていないため、pipを使ってインストールする必要があります。 >pip inst