Browser Use
Browser Useは、スクリーンショットを使用してブラウザの状態をキャプチャし、アクションを使用してユーザー操作をシミュレートするブラウザ自動化SDKです。この章では、簡単な呼び出しでbrowser-useを使用してWebでエージェントタスクを簡単に実行する方法を紹介します。
Scrapeless APIキーの取得
ダッシュボードの設定タブを参照してください:
次に、.env
ファイルでSCRAPELESS_API_KEY
環境変数をコピーして設定します。
.env
ファイル内のOPENAI_API_KEY
環境変数も必要です。
OPENAI_API_KEY=your-openai-api-key
SCRAPELESS_API_KEY=your-scrapeless-api-key
💡サンプルAPIキーを実際のAPIキーに置き換えることを忘れないでください。
Browser Useのインストール
pip (Python>=3.11)を使用する場合:
pip install browser-use
メモリ機能の場合(PyTorchとの互換性のためPython<3.13
が必要です):
pip install "browser-use[memory]"
ブラウザとエージェントの設定
ブラウザを設定し、自動化エージェントを作成する方法は次のとおりです。
from dotenv import load_dotenv
import os
import asyncio
from urllib.parse import urlencode
from langchain_openai import ChatOpenAI
from browser_use import Agent, Browser, BrowserConfig
from pydantic import SecretStr
task = "Go to Google, search for 'Scrapeless', click on the first post and return to the title"
async def setup_browser() -> Browser:
scrapeless_base_url = "wss://browser.scrapeless.com/browser"
query_params = {
"token": os.environ.get("SCRAPELESS_API_KEY"),
"session_ttl": 180,
"proxy_country": "ANY"
}
browser_ws_endpoint = f"{scrapeless_base_url}?{urlencode(query_params)}"
config = BrowserConfig(cdp_url=browser_ws_endpoint)
browser = Browser(config)
return browser
async def setup_agent(browser: Browser) -> Agent:
llm = ChatOpenAI(
model="gpt-4o", # Or choose the model you want to use
api_key=SecretStr(os.environ.get("OPENAI_API_KEY")),
)
return Agent(
task=task,
llm=llm,
browser=browser,
)
メイン関数の作成
すべてをまとめたメイン関数は次のとおりです。
async def main():
load_dotenv()
browser = await setup_browser()
agent = await setup_agent(browser)
result = await agent.run()
print(result)
await browser.close()
asyncio.run(main())
スクリプトの実行
スクリプトを実行します。
python run main.py
ScrapelessダッシュボードでScrapelessセッションが開始されます。
完全なコード
from dotenv import load_dotenv
import os
import asyncio
from urllib.parse import urlencode
from langchain_openai import ChatOpenAI
from browser_use import Agent, Browser, BrowserConfig
from pydantic import SecretStr
task = "Go to Google, search for 'Scrapeless', click on the first post and return to the title"
async def setup_browser() -> Browser:
scrapeless_base_url = "wss://browser.scrapeless.com/browser"
query_params = {
"token": os.environ.get("SCRAPELESS_API_KEY"),
"session_ttl": 180,
"proxy_country": "ANY"
}
browser_ws_endpoint = f"{scrapeless_base_url}?{urlencode(query_params)}"
config = BrowserConfig(cdp_url=browser_ws_endpoint)
browser = Browser(config)
return browser
async def setup_agent(browser: Browser) -> Agent:
llm = ChatOpenAI(
model="gpt-4o", # Or choose the model you want to use
api_key=SecretStr(os.environ.get("OPENAI_API_KEY")),
)
return Agent(
task=task,
llm=llm,
browser=browser,
)
async def main():
load_dotenv()
browser = await setup_browser()
agent = await setup_agent(browser)
result = await agent.run()
print(result)
await browser.close()
asyncio.run(main())
💡Browser Useは現在、Pythonのみをサポートしています。
💡ライブセッションのURLをコピーしてセッションの進行状況をリアルタイムで確認したり、セッション履歴でセッションの再生を見ることができます。