mirror of
https://github.com/browser-use/browser-use.git
synced 2026-09-14 19:59:47 +08:00
9be28bcea1
Adds bu-2-0-mini-preview as an accepted model id and makes it the constructor default, so a bare ChatBrowserUse() now routes there. bu-2-0 is unchanged: still accepted, still documented as the premium option, and bu-latest still resolves to it. Keeping 'latest' on the stable line means existing callers pinned to that alias do not silently move onto a preview model; only the bare-constructor default moves. Pricing is registered alongside the model so cost tracking does not silently report $0 for what is now the default. This model has no cache discount, so cached reads bill at the input rate. Examples, README and the model reference are updated to the new default. The model reference also claimed bu-latest resolved to bu-1-0, which has not been true since bu-2-0 shipped; corrected here.
55 lines
1.4 KiB
Python
55 lines
1.4 KiB
Python
"""
|
|
Getting Started Example 3: Data Extraction
|
|
|
|
This example demonstrates how to:
|
|
- Navigate to a website with structured data
|
|
- Extract specific information from the page
|
|
- Process and organize the extracted data
|
|
- Return structured results
|
|
|
|
This builds on previous examples by showing how to get valuable data from websites.
|
|
|
|
Setup:
|
|
1. Get your API key from https://cloud.browser-use.com/new-api-key
|
|
2. Set environment variable: export BROWSER_USE_API_KEY="your-key"
|
|
"""
|
|
|
|
import asyncio
|
|
import os
|
|
import sys
|
|
|
|
# Add the parent directory to the path so we can import browser_use
|
|
sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
|
|
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
from browser_use import Agent, ChatBrowserUse
|
|
|
|
|
|
async def main():
|
|
# Initialize the model
|
|
llm = ChatBrowserUse(model='bu-2-0-mini-preview')
|
|
|
|
# Define a data extraction task
|
|
task = """
|
|
Go to https://quotes.toscrape.com/ and extract the following information:
|
|
- The first 5 quotes on the page
|
|
- The author of each quote
|
|
- The tags associated with each quote
|
|
|
|
Present the information in a clear, structured format like:
|
|
Quote 1: "[quote text]" - Author: [author name] - Tags: [tag1, tag2, ...]
|
|
Quote 2: "[quote text]" - Author: [author name] - Tags: [tag1, tag2, ...]
|
|
etc.
|
|
"""
|
|
|
|
# Create and run the agent
|
|
agent = Agent(task=task, llm=llm)
|
|
await agent.run()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
asyncio.run(main())
|