Allgemeine Einführung
Browser-Use ist ein innovatives Open-Source-Web-Automatisierungstool, das speziell entwickelt wurde, um Sprachmodelle (LLMs) in die Lage zu versetzen, auf natürliche Weise mit Websites zu interagieren. Es bietet ein leistungsstarkes und flexibles Framework, das eine breite Palette von Mainstream-Sprachmodellen unterstützt, darunter GPT-4, Claude und andere. Das bemerkenswerteste Merkmal des Tools ist die nahtlose Integration von KI-Fähigkeiten mit der Browser-Automatisierung, die visuelle Erkennung und HTML-Extraktion, die automatische Verwaltung von Multi-Tab-Seiten, intelligente Elementerkennung usw. unterstützt. Browser-Use führt nicht nur einfache Web-Browsing-Aufgaben aus, sondern bewältigt auch komplexe Interaktionsszenarien wie das automatische Ausfüllen von Formularen, das Einreichen von Anträgen und die Suche nach Informationen. Es wurde entwickelt, um KI-Agenten in die Lage zu versetzen, Browser so natürlich wie Menschen zu nutzen, was den Entwicklungsprozess der Web-Automatisierung erheblich vereinfacht. Das Tool ist besonders für Entwickler geeignet, die Web-Automatisierung, Datenerfassung und Batch-Operationen durchführen müssen.
Funktionsliste
- Unterstützt die visuelle Erkennung und intelligente Extraktion von HTML-Inhalten
- Automatisiertes System zur Verwaltung von Seiten mit mehreren Registerkarten
- Extrahiert XPath-Pfade von angeklickten Elementen und reproduziert exakte LLM-Operationen.
- Unterstützung für benutzerdefinierte Aktionen (z. B. Datei speichern, Datenbank pushen, Benachrichtigung senden, manuelle Eingaben abrufen)
- Fähigkeit zur Selbstkorrektur
- Kompatibel mit allen von LangChain unterstützten Sprachmodellen
- Unterstützung für die parallele Ausführung mehrerer AI-Agenten
- Konfigurierbare Browser-Sicherheitsfunktionen
- Funktion zur dauerhaften Speicherung von Cookies
- Flexible Einstellungen für die Wartezeit beim Laden von Seiten
Hilfe verwenden
1. die Konfiguration der Installation
- Installieren Sie zunächst das Paket Browser-Use über pip:
pip install browser-use
- (Optional) Installieren Sie den Dramaturgen:
Dramaturgische Installation
- Konfigurieren Sie die Umgebungsvariablen:
einrichten..env
Datei und fügen Sie die erforderlichen API-Schlüssel hinzu:
OPENAI_API_KEY=Ihr OpenAI-API-Schlüssel
ANTHROPIC_API_KEY=Ihr Anthropic-API-Schlüssel.
2. grundlegende Verwendung
2.1 Erstellen eines einfachen KI-Agenten
von langchain_openai importieren ChatOpenAI
von browser_verwendung importieren Agent
importieren asyncio
async def main(): agent = Agent()
agent = Agent(
task="Finde Informationen über einen bestimmten Flug", llm=ChatOpenAI(model="ChatOpenAI", "ChatOpenAI")
llm=ChatOpenAI(model="gpt-4")), )
)
Ergebnis = await agent.run()
print(result)
asyncio.run(main())
2.2 Registrierung von benutzerdefinierten Aktionen
Benutzerdefinierte Aktionen können mit Hilfe von Dekoratoren hinzugefügt werden:
from browser_use.controller.service import Controller
controller = Controller()
@controller.action('Benutzer nach Informationen fragen')
def ask_human(question: str, display_question: bool) -> str.
return input(f'\n{Frage}\nEingabe: ')
2.3 Definition von parametrischen Modellen mit Pydantic
von pydantic importieren BaseModel
from typing import Optional
class JobDetails(BaseModel).
Titel: str
Firma: str
job_link: str
Gehalt: Optional[str] = None
@controller.action('Jobdetails speichern', param_model=JobDetails, requires_browser=True)
async def save_job(params: JobDetails, browser: Browser):
print(params)
page = browser.get_current_page()
page.go_to(params.job_link)
3. die Nutzung der erweiterten Funktionen
3.1 Parallelisierungsmittel
Es wird empfohlen, eine einzige Browser-Instanz zu verwenden und den Kontext für jeden Agenten zu parallelisieren:
browser = Browser()
for i in range(10): async with browser.new_context() as context
async with browser.new_context() as context.
agent = Agent(
task=f "Aufgabe {i}", llm=model, task=f "Aufgabe {i}", async with browser.new_context()
task=f "Aufgabe {i}", llm=model, browser_context=context
browser_context=context
)
# Verarbeitung von Aufgaben...
3.2 Browser-Konfiguration
Das Verhalten des Browsers kann durch die Klassen BrowserConfig und BrowserContextConfig konfiguriert werden:
browser_config = BrowserConfig(
headless=False, # Ob der Headless-Modus verwendet werden soll oder nicht
keep_open=True, # Lässt den Browser auch nach Beendigung des Skripts geöffnet
disable_security=True, # Deaktiviert Sicherheitsfunktionen
cookies_file="cookies.json", # Cookie-Speicherdatei
minimum_wait_page_load_time=1.0, # Mindestwartezeit für das Laden einer Seite
wait_for_network_idle_page_load_time=2.0, # Wartezeit im Leerlauf des Netzwerks
maximum_wait_page_load_time=10.0 # Maximale Wartezeit beim Laden einer Seite
)
4 Empfehlungen zur Leistungsoptimierung
- Angemessene Wartezeiten beim Laden der Seite, um übermäßige Wartezeiten zu vermeiden
- Rationelle Nutzung von Parallelisierungsfunktionen zur Verbesserung der Verarbeitungseffizienz
- Aktivieren Sie gegebenenfalls den Headless-Modus, um den Ressourcenverbrauch zu reduzieren.
- Verringerung der doppelten Authentifizierung mit Cookie-Persistenz
- Passen Sie die Konfiguration der Sicherheitsmerkmale nach Bedarf an
5. die Fehlersuche
- Wenn Sie Probleme mit domänenübergreifenden Anfragen haben, sollten Sie die Option
disable_security
Optionen (wie bei Computersoftware-Einstellungen) - Zeitüberschreitung beim Laden der Seite mit einstellbarem Wartezeitparameter
- Stellen Sie sicher, dass der API-Schlüssel korrekt konfiguriert ist.
- Status der Netzwerkverbindung prüfen
- Überprüfen Sie das Konsolenprotokoll des Browsers auf detaillierte Fehlermeldungen