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.
52 lines
1.5 KiB
Python
52 lines
1.5 KiB
Python
"""
|
|
Save any webpage as a PDF using the save_as_pdf action.
|
|
|
|
The agent can save the current page as a PDF at any point during a task.
|
|
Supports custom filenames, paper sizes (Letter, A4, Legal, A3, Tabloid),
|
|
landscape orientation, and background printing.
|
|
|
|
By default the PDF includes page metadata in the margins (just like Chrome's
|
|
Print dialog): the date in the header and the page URL plus page numbers in the
|
|
footer. Pass display_header_footer=False for a clean PDF, or supply custom
|
|
header_template / footer_template HTML to control exactly what's printed.
|
|
|
|
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
|
|
|
|
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():
|
|
agent = Agent(
|
|
task=(
|
|
'Go to https://news.ycombinator.com and save the front page as a PDF named "hackernews". '
|
|
'Then go to https://en.wikipedia.org/wiki/Web_browser and save just that article as a PDF in A4 format.'
|
|
),
|
|
llm=ChatBrowserUse(model='bu-2-0-mini-preview'),
|
|
)
|
|
|
|
history = await agent.run()
|
|
|
|
# Print paths of any PDF files the agent saved
|
|
print('\nSaved files:')
|
|
for result in history.action_results():
|
|
if result.attachments:
|
|
for path in result.attachments:
|
|
print(f' {path}')
|
|
|
|
|
|
if __name__ == '__main__':
|
|
asyncio.run(main())
|