🔹 PythonでWebスクレイピング入門!requests + BeautifulSoupでデータ取得【初心者向け】
「欲しい情報が毎回Webにある…でも手作業でコピペは大変!」
そんなときに便利なのが、Pythonを使ったWebスクレイピングです。
この記事では、初心者でも簡単に使える2つのライブラリ「requests」と「BeautifulSoup」を使って、Webからデータを自動取得する方法を解説します。
✅ Webスクレイピングってなに?
Webスクレイピングとは、WebページのHTMLを読み取って必要な情報を取り出す技術です。
たとえば:
- 商品の価格情報を自動で取得
- ニュースサイトから記事タイトルを一覧抽出
- ブログの更新情報をチェック
などができます。
🛠 必要なライブラリをインストール
まずはPythonのライブラリをインストールしましょう。
bashコピーする編集するpip install requests beautifulsoup4
✏️ サンプルコード:Yahooニュースのタイトルを取得
pythonコピーする編集するimport requests
from bs4 import BeautifulSoup
url = "https://news.yahoo.co.jp/"
# HTMLを取得
res = requests.get(url)
soup = BeautifulSoup(res.text, "html.parser")
# 見出しを抽出(例:h3タグ)
headlines = soup.find_all("h3")
for h in headlines:
print(h.get_text())
▶️ 実行すると、Yahoo!ニュースの見出しがズラッと表示されます。
💡 よく使うBeautifulSoupの関数
処理内容 | コマンド例 |
---|---|
要素を取得 | soup.find("div") |
複数取得 | soup.find_all("a") |
テキスト取得 | .get_text() |
属性を取得 | element["href"] (リンク先など) |
クラス指定 | soup.find("div", class_="price") |
📦 実用例いろいろ!
- メルカリや楽天の最新出品一覧を取得して通知
- 自社商品と競合サイトの価格比較
- ニュース記事や求人情報の自動収集
- Webカタログの表データを自動抽出 → CSV化
❗注意点
- 利用規約を守る(スクレイピングNGなサイトもあります)
- アクセス間隔を開ける(迷惑にならないように)
- ログインが必要なページやJavaScript生成は Seleniumのほうが得意
🚀 まとめ:requests + BeautifulSoupはスクレイピングの第一歩!
難しそうに見えるWebスクレイピングも、Pythonなら簡単に始められます。
毎日見ているページを自動でチェックできたら、あなたの作業時間は大きく節約できますよ!
ディスカッション
コメント一覧
まだ、コメントがありません