firecrawl-build-interact は何をしますか?
Firecrawl /interact をプロダクトコードに統合し、スクレイピング後の動的ページやブラウザ操作を実現します。プレーンな /scrape では完了できないクリック、フォーム入力、ページネーション、認証対応フローなど、複数ステップのインタラクションが必要な機能に使用します。
概要
/interact エンドポイントは、Firecrawl のブラウザ自動化機能を拡張し、スクレイピング後の動的な操作を可能にします。このスキルは、AI エージェント(Claude Code、Cursor、Codex など)が実際の製品コードに /interact を組み込むためのガイドを提供します。
主な機能
- クリック操作: ボタンやリンクをプログラムでクリックします。
- フォーム入力: テキストフィールドに値を入力します。
- ページネーション: 「次へ」ボタンをクリックして複数ページを横断します。
- 認証対応フロー: ログインフォームの入力や認証後の状態を維持します。
- 複数ステップの連鎖: 一連の操作を順番に実行します。
対応プラットフォーム
- Cursor
- Claude Code
- Codex
- その他の AI エージェントツール
使用方法
1. API キーの設定
環境変数に Firecrawl API キーを設定します:
export FIRECRAWL_API_KEY="your-api-key-here"
2. 基本のインタラクション例
import requests
api_key = "YOUR_API_KEY"
url = "https://api.firecrawl.dev/v1/interact"
payload = {
"url": "https://example.com/login",
"actions": [
{"type": "click", "selector": "#login-button"},
{"type": "wait", "duration": 2000},
{"type": "type", "selector": "#username", "value": "user"},
{"type": "type", "selector": "#password", "value": "pass"},
{"type": "click", "selector": "#submit"}
]
}
response = requests.post(url, json=payload, headers={"Authorization": f"Bearer {api_key}"})
print(response.json())
3. 認証状態の維持
# セッションクッキーを保存して再利用
session = requests.Session()
# ... 初回認証後、クッキーを保存
cookies = response.cookies
# 後続のリクエストでクッキーを送信
response = session.get("https://example.com/dashboard", cookies=cookies)
エラーハンドリング
try:
response = requests.post(url, json=payload, headers=headers)
response.raise_for_status()
data = response.json()
if "error" in data:
print(f"インタラクションエラー: {data['error']}")
else:
print("操作成功")
except requests.exceptions.RequestException as e:
print(f"リクエスト失敗: {e}")
注意事項
- レート制限に注意してください。
- 操作対象のページの利用規約を遵守してください。
- 認証情報は安全に管理してください。