AIエージェントによるブラウザ操作を実現する「browser-use」が、注目を集めています。
そして、本記事では、browser-useの基本的な使い方から実際の動作検証までを解説します。
動作環境
browser-useを利用するには、Python 3.11以降の環境が必要です。
これは、browser-useが最新のPython機能を活用して設計されているためです。
そのため、動作環境を整える際は、まずPythonのバージョンを確認してください。
browser-useの特徴
browser-useは、AIエージェントがブラウザを操作するためのPythonフレームワークです。
そして、Vision + HTML抽出、マルチタブの自動管理など、強力な機能を備えています。
また、クリックした要素のXPathを抽出して再現できるため、正確な操作の再現が可能です。
インストール手順
browser-useのインストールは、pipコマンドで簡単に行えます。
pip install browser-use
次に、playwrightのインストールも必要です。
playwright install
環境設定
browser-useを使用するには、.envファイルでAPIキーを設定する必要があります。
プロジェクトのルートディレクトリに.envファイルを作成し、以下の内容を記述してください。
OPENAI_API_KEY=あなたのOpenAI APIキー ANTHROPIC_API_KEY=あなたのAnthropic APIキー
基本的な使い方
browser-useを使用したプログラムは、以下のような構造になります。
from langchain_openai import ChatOpenAI from browser_use import Agent import asyncio async def main(): agent = Agent( task="実行したいタスクの内容", llm=ChatOpenAI(model="gpt-4o-mini"), ) result = await agent.run() print(result) asyncio.run(main())
動作検証
実際の動作を2つのケースで検証しました。
ケース1:Webサイトのタイトル取得
まず、example.comのタイトルを取得する簡単なタスクを試しました。
タスクの内容は以下の通りです。
task="https://example.com/にアクセスして、「title」を取得してください。"
実行ログを見てみましょう。
INFO [agent] 🚀 Starting task: https://example.com/にアクセスして、「title」を取得してください。 INFO [agent] 📍 Step 1 INFO [agent] 🤷 Eval: Unknown INFO [agent] 🧠 Memory: Current URL is about:blank. Need to navigate to https://example.com/ and extract the title. [...] INFO [agent] 📄 Result: The title of the page is 'Example Domain'. INFO [agent] ✅ Task completed successfully
エージェントは「Example Domain」というタイトルの取得に成功しました。
ケース2:ログインと情報取得
次に、より複雑なタスクとして、デモサイトへのログインと情報取得を試みました。
タスクの内容は次の通りです。
task=""" https://demo.leafworks.jp/package/loginplus/でログインする。 認証情報は以下。 ID:admin,PASS:leafworks そして、ログイン後、ステータスの情報を取得する。 """
対象のデモページは、IDやパスワードが公開されています。
ログイン後、以下の内容を確認できます。
実行ログの抜粋。
INFO [agent] 🚀 Starting task: INFO [agent] 📍 Step 1 INFO [agent] 🧠 Memory: Need to log in to the specified URL and retrieve status information after logging in. [...] INFO [agent] 📄 Result: Logged in successfully and retrieved the following status information: - Registered members: 6 - Inquiries: 1 - Notifications: 5 - Contents: 13
エージェントは次の順序で処理を実行しました。
- ログインページにアクセス
- 認証情報を入力
- ログインを実行
- ステータス情報を抽出
そして、全ての処理を正確に完了しました。
まとめ
browser-useは、AIエージェントによるブラウザ操作を簡単に実現できるフレームワークです。
そして、基本的なWebサイトの閲覧から、ログインを必要とする複雑な操作まで、幅広いタスクをこなすことができます。
今回の検証を通じて、browser-useの高い信頼性と使いやすさを確認できました。
これは、ブラウザ操作の自動化を検討している方々にとって、有望なツールとなるでしょう。