BeautifulSoup(beautifulsoup4)とは
BeautifulSoupは、HTMLやXMLを解析してデータを取り出すためのPythonライブラリです。
ウェブスクレイピングで取得したHTMLから、特定のタグやテキストを抽出するときによく使われます。
インストールするパッケージ名は beautifulsoup4 です。import するときのモジュール名は bs4 になるため、この点は最初に押さえておくと混乱しません。
# インストール時のパッケージ名
beautifulsoup4
# インポート時のモジュール名
bs4
pip install beautifulsoup4 の基本手順
通常のインストール
ターミナル(コマンドプロンプトまたはPowerShell)で以下を実行します。
pip install beautifulsoup4
Windowsでは py -m pip install beautifulsoup4 を使う方法もあります。
py -m pip install beautifulsoup4
py コマンドはWindowsのPythonランチャーです。複数のPythonバージョンを管理している場合に特に便利です。
インストールが成功すると、以下のような出力が表示されます(バージョン番号は環境によって異なります)。
Successfully installed beautifulsoup4-4.x.x soupsieve-2.x.x
soupsieve はBeautifulSoupがCSSセレクタを処理するために使うライブラリで、beautifulsoup4の依存パッケージとして自動的にインストールされます。
仮想環境(venv)を使っている場合
仮想環境を有効化してから pip install を実行します。
仮想環境の外にインストールしてしまうと、スクリプトを実行したときに ModuleNotFoundError が出ることがあるため、順番に注意してください。
# 仮想環境を有効化(Windows)
.venv\Scripts\activate
# 仮想環境を有効化(macOS / Linux)
source .venv/bin/activate
# 有効化後にインストール
pip install beautifulsoup4
venvの使い方については、Python venvの使い方で解説しています。
インストール後の動作確認
インストールが完了したら、正しく使えるか確認します。
Pythonを起動して、以下をそのまま実行してください。
from bs4 import BeautifulSoup
html = "<html><body><h1>テスト</h1></body></html>"
soup = BeautifulSoup(html, "html.parser")
print(soup.find("h1").get_text())
テスト
テスト と表示されれば、インストールは正常に完了しています。
パーサーには "html.parser" を指定しています。これはPythonの標準ライブラリに含まれるため、追加インストールは不要です。
インストールされているバージョンを確認する
インストール済みのバージョンを確認したい場合は、以下のコマンドを使います。
pip show beautifulsoup4
Name: beautifulsoup4
Version: 4.x.x
Summary: Screen-scraping library
...
Pythonコードからバージョンを確認する方法もあります。
import bs4
print(bs4.__version__)
4.x.x
ライブラリのバージョン確認方法について詳しくは、Pythonライブラリのバージョン確認方法で解説しています。
よくあるエラーと対処法
ModuleNotFoundError: No module named ‘bs4’
ModuleNotFoundError: No module named 'bs4'
このエラーが出る場合、以下の原因が考えられます。
原因1:インストールしていない環境でスクリプトを実行している
仮想環境を使っている場合、仮想環境を有効化せずにスクリプトを実行するとこのエラーが出ます。
仮想環境を有効化してから再実行してください。
原因2:beautifulsoup をインストールしている(パッケージ名の間違い)
beautifulsoup(末尾に4がない)という別のパッケージが存在しますが、現在はbeautifulsoup4の使用が推奨されています。
インストール時に beautifulsoup4 と正確に指定しているか確認してください。
# 誤り(古いパッケージ)
pip install beautifulsoup
# 正しい
pip install beautifulsoup4
原因3:import BeautifulSoup と書いている
インポート文の書き方を確認してください。
# 誤り
import BeautifulSoup
# 正しい
from bs4 import BeautifulSoup
pip自体が古い場合
インストール時に以下のような警告が出ることがあります。
WARNING: You are using pip version x.x.x; however, version x.x.x is available.
その場合は以下でpipを更新できます。
pip install --upgrade pip
パーサーの警告が出る場合
以下のような警告が出ることがあります。
UserWarning: No parser was explicitly specified...
BeautifulSoup() の第2引数にパーサーを明示することで解消できます。
# パーサーを明示する
soup = BeautifulSoup(html, "html.parser")
"html.parser" はPython標準ライブラリのため追加インストールなしで使えます。
より高速なパーサーが必要な場合は lxml を使う選択肢もありますが、その場合は別途 pip install lxml が必要です。
AI時代での補足
BeautifulSoupのコードはAIが生成しやすいテーマのひとつです。
インポート文やパーサー指定を正しく書けているかを見分けるためには、この記事で確認したような基本構造を知っておくと役立ちます。
まとめ
BeautifulSoup(beautifulsoup4)のインストールから動作確認までをまとめます。
- インストールコマンドは
pip install beautifulsoup4 - Windowsでは
py -m pip install beautifulsoup4も使える - インポートは
from bs4 import BeautifulSoup "html.parser"は標準ライブラリのため追加インストール不要- 仮想環境を使っている場合は、有効化してからインストールする
インストールと動作確認ができたら、次はBeautifulSoupを使ったスクレイピングの実践に進めます。
タグの検索方法やデータの取り出し方については、PythonとBeautifulSoupを使ったウェブスクレイピングとデータ前処理の手順で解説しています。