Seleniumのコードを書くのが面倒、エラーの直し方がわからない——そんなときにClaude Codeを使うと、スクレイピングの開発が大幅に楽になります。
実際にやっている使い方をまとめました。
Claude Code とは
Claude Code はAnthropicが提供するAIコーディングツールです。ターミナルやVS Codeから使えて、指示を出すとコードを書いて実行してくれます。
スクレイピングとの相性が特によく、「このサイトのこのデータを取りたい」と言うだけでSeleniumのコードを生成してくれます。
事前準備
# Claude Code のインストール
npm install -g @anthropic-ai/claude-code
# Selenium のインストール
pip install selenium基本の使い方:コード生成
プロジェクトのフォルダでClaude Codeを起動して、日本語で指示を出します。
claude起動後、こう伝えるだけでコードを書いてくれます:
Pythonのseleniumを使って、https://example.com のページから
商品名と価格を全ページ分取得してCSVに保存するスクリプトを作ってClaude Code がコードを書いて、そのままターミナルで実行し、エラーがあれば自動で直してくれます。
うまくいくプロンプトの書き方
スクレイピングを依頼するときは以下を伝えると精度が上がります:
# 伝えること
1. 対象サイトのURL
2. 取得したいデータ(商品名・価格・URLなど)
3. 出力形式(CSV・JSON・printなど)
4. ページネーションがあるかどうか
5. ログインが必要かどうか例:
https://example.com/products の一覧ページから、
商品名・価格・詳細ページURLを取得したい。
ページネーションあり(「次へ」ボタン)。
結果はitems.csvに保存して。
seleniumのheadlessモードを使って。エラー修正の依頼方法
実行してエラーが出たら、エラー文をそのままClaude Codeに貼るだけです。
# エラーが出たら
NoSuchElementException: Message: no such element:
Unable to locate element: {"method":"css selector","selector":".price"}
↑このエラーを解決してClaude Code が原因を分析して修正してくれます。自分でXPathやCSSセレクタを調べる手間が省けます。
動的ページへの対応
JavaScriptで後から読み込まれる要素を取得したいとき:
# Claude Codeへの指示例
このコードを実行すると .product-list が空で取得できない。
おそらくJavaScriptで動的に読み込まれている。
WebDriverWaitで要素が表示されるまで待つように修正してすると適切なWait処理を追加してくれます:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 15)
products = wait.until(
EC.presence_of_all_elements_located((By.CSS_SELECTOR, ".product-list .item"))
)実践:定期実行スクリプトにする
一度コードが完成したら、定期実行の設定もClaude Codeに頼めます:
# 指示例
さっき作ったスクレイピングスクリプトを
毎日朝9時に自動実行するようにして。
結果は日付付きのCSVファイルに保存する形に変更して。cronの設定やファイル名に日付を入れる処理まで一括でやってくれます。
使ってみての感想
Seleniumはエラーが多くてデバッグが大変なのですが、Claude Codeに任せると:
・XPathやCSSセレクタを自分で調べなくていい
・エラーが出ても「直して」の一言で対処してくれる
・ヘッドレス・Wait処理などのお決まりコードを毎回書かなくていい
スクレイピング自体の時間よりもデバッグの時間の方が長いことが多いので、そこをAIに任せるのは効果的です。
Seleniumの基本操作は「Python Selenium スクレイピング入門」も合わせて読んでみてください。