mcpField
B
browser-automation

browser-automation

github.com/aws-samples生産性19740 回インストール3 週間前に更新
リポジトリ

browser-automation について

自然言語によるブラウザー操作、ページ確認、タブ管理、スクリーンショット保存を行うスキルです。より簡単な方法では対応できない、対話型、ログイン必須、動的描画のページで役立ちます。

主な機能

  1. 01クリック、入力、スクロール、選択の実行
  2. 02ページのテキスト、表、リンクの確認
  3. 03タブの作成、切り替え、終了
  4. 04ワークスペースへのスクリーンショット保存

活用シーン

  1. 01複数段階のWebフォームを操作
  2. 02ログイン必須ページの内容を読む
  3. 03描画済みページから表やリンクを抽出
  4. 04重要なページ状態をスクリーンショットで記録

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aws-samples/sample-strands-agent-with-agentcore --skill browser-automation

インストール後、Claude Code で/browser-automationを入力して読み込まれたか確認します。

詳細

ブラウザー自動化

利用可能なツール

  • browser_act(instruction, starting_url?):自然言語でブラウザー操作(クリック、入力、スクロール、選択)を実行します。starting_urlを使用すると、ページに移動して操作を1回の呼び出しで実行できます。
  • browser_get_page_info(url?, text?, tables?, links?):ページの構造とDOMデータを取得します(高速、AI不使用)。urlでページに移動し、text=Trueで全文、tables=Trueでテーブルデータ、links=Trueですべてのリンクを取得できます。
  • browser_manage_tabs(action, tab_index?, url?):ブラウザータブを切り替え、閉じる、または作成します
  • browser_save_screenshot(filename):現在のページのスクリーンショットをワークスペースに保存します

使用する場面

タスクの遂行に本当に必要な場合は、ブラウザー自動化を使用してください。

  • UI 操作:フォームへの入力、ボタンのクリック、複数ステップのワークフローの操作
  • ログインが必要なページ:API ではアクセスできない認証が必要なコンテンツへのアクセス
  • 動的なページや JavaScript を多用するページ:通常の HTTP リクエストでは取得できない、クライアント側でレンダリングされるコンテンツ
  • 人間らしいブラウジングが必要な場合:ボットをブロックするサイトや、現実的な操作パターンが必要なサイト
  • 構造化データのスクレイピング:API がなく、レンダリングされたページからデータを抽出する必要がある場合

一般的な情報の検索、ニュース、または一般公開されているページには、web search または url_fetcher を優先してください。ブラウザー自動化は時間がかかり、処理も重くなります。より簡単なツールでは不十分な場合に限り使用してください。

ツールの選択

  • browser_act:UI 操作(クリック、入力、スクロール、フォームへの入力)。starting_urlを使用すると、ページを開いて1回の呼び出しで操作できます。
  • browser_get_page_info:高速なページ構造の確認と、任意のコンテンツ抽出(300 ms 未満)。先に移動するにはurlを使用します。
  • browser_manage_tabs:タブの切り替え、クローズ、作成(タブの表示にはget_page_infoを使用)
  • browser_save_screenshot:検索結果、確認画面、重要なデータなどの節目のスクリーンショットを保存します

browser_act のベストプラクティス

  • 予測可能な手順を最大3つまで組み合わせます:「1. 検索欄に‘laptop’と入力 2. 検索ボタンをクリック 3. 最初の結果をクリック」
  • 新しいページを開く場合はstarting_urlを使用します:browser_act(instruction='Search for laptops', starting_url='https://amazon.com')
  • 失敗した場合:スクリーンショットで現在の状態を確認し、その時点から再試行します
  • 視覚的な作成(図表、描画)では、マウス操作よりもコードやテキストの入力方法を優先してください

browser_get_page_info のベストプラクティス

  • 1回の呼び出しでページに移動して確認するには、urlを使用します:browser_get_page_info(url='https://example.com', tables=True)
  • ページ全体のテキストを取得するには、text=Trueを使用します(記事本文の閲覧に便利です)
  • ページの構造化されたテーブルデータを抽出するには、tables=Trueを使用します
  • ページ上のすべてのリンクを取得するには、links=Trueを使用します(最大200件)

UI ガイダンス(tools-config より)

ツールの選択:

  • browser_act:UI 操作(クリック、入力、スクロール、フォームへの入力)。starting_url を使用すると、ページに移動して操作を1回の呼び出しで実行できます。
  • browser_get_page_info:高速な DOM の確認(300 ms 未満)。先に移動するには url パラメーターを使用します。コンテンツの抽出には text、tables、links パラメーターを使用します。
  • browser_manage_tabs:タブを切り替え、閉じる、または作成します。
  • browser_save_screenshot:ドキュメント用の節目のスクリーンショットをワークスペースに保存します。

browser_act のベストプラクティス:

  • 予測可能な手順を最大3つまで組み合わせます:「1. 検索欄に‘laptop’と入力 2. 検索ボタンをクリック 3. 最初の結果をクリック」
  • 新しいページを開く場合は starting_url を使用します:browser_act(instruction='...', starting_url='https://...')
  • 失敗した場合:スクリーンショットで現在の状態を確認し、その時点から再試行します

browser_get_page_info のベストプラクティス:

  • 1回の呼び出しでページに移動して確認するには url パラメーターを使用します:browser_get_page_info(url='https://...', tables=True)
  • ページ全体のテキストには text=True、テーブルデータには tables=True、ページ上のすべてのリンクには links=True を使用します

コメント