Jak zautomatyzować witrynę internetową za pomocą BrowserUse krok po kroku

Ostatnia aktualizacja: 27/08/2026

  • Browser Use łączy w sobie stan strukturalny, narzędzia i opcjonalny widok w celu kontrolowania stron internetowych.
  • Obecna instalacja korzysta z przeglądarki i pobiera Chromium za pomocą własnego instalatora.
  • max_actions_per_step grupuje akcje; max_steps ogranicza całkowity czas wykonania.
  • Dane uwierzytelniające muszą być chronione za pomocą zakładek, dozwolonych domen i izolowanych profili.

Internet zawiera ogromną ilość informacji, ale ich ustrukturyzowane pozyskiwanie wciąż jest skomplikowane. Wiele stron internetowych nie oferuje publicznego API, nie ładuje treści za pomocą JavaScriptu ani nie dystrybuuje danych do formularzy, menu i wielu ekranów. Istnieje wiele rozwiązań, które rozwiązują te problemy. narzędzia do scrapowania stron internetowychBeautiful Soup dobrze współpracuje ze stosunkowo statycznymi dokumentami HTML, natomiast Selenium i Playwright umożliwiają sterowanie dynamicznymi stronami przy użyciu prawdziwej przeglądarki.

Korzystanie z przeglądarki Wprowadza inne podejście: zamiast planować wszystkie działania z góry, pozwala na określenie celu agent sztucznej inteligencjiAgent obserwuje stan strony, decyduje, którego narzędzia użyć i kontynuuje nawigację, aż do zakończenia zadania lub osiągnięcia ustalonego limitu.

Ułatwia to automatyzację różnych lub zmieniających się stron, ale nie zmienia żadnej witryny w niezawodne API ani nie eliminuje konieczności walidacji wyników. Użycie przeglądarki dodaje możliwości wnioskowania, ale wprowadza również opóźnienia, zużycie modelu i pewną zmienność między uruchomieniami.

Projekt Google Mariner
Powiązany artykuł:
Google Project Mariner: To agent AI, którego celem jest transformacja sieci.

Czym jest korzystanie z przeglądarki i jak to działa?

korzystanie z przeglądarki

Browser Use to biblioteka języka Python o otwartym kodzie źródłowym przeznaczona do tworzenia agentów potrafiących kontrolować przeglądarkę. Można go uruchomić lokalnie, użyj zdalnej przeglądarki lub połącz się z przeglądarką korzystającą z infrastruktury zarządzanej w chmurze.

Deweloper dostarcza zadanie, model języka i, w razie potrzeby, niestandardową konfigurację przeglądarki. Podczas wykonywania Agent otrzymuje przetworzony stan ze strony i używa narzędzi do nawigacji., dotknij elementów, wpisz, przewijaj, przełączaj karty, przesyłaj pliki lub wyodrębniaj zawartość.

Nie jest prawdą, że Przeglądarka zawsze analizuje ekran jak człowiek. System może pracować ze strukturą i elementami dostępnymi na stronie. Widok jest opcjonalny i pozwala na uciekanie się do przechwytywania gdy potrzebne są informacje wizualne.

Parametr use_vision obecnie używa wartości "auto" Domyślnie w tym trybie agent ma narzędzie do przechwytywania, ale korzysta z niego tylko wtedy, gdy jest to potrzebne. Można je również skonfigurować jako True włączyć go na stałe lub jako False aby ją dezaktywować.

Ta kombinacja pozwala na rozwiązywanie zadań, które byłyby trudne do wykonania przy użyciu sztywnych selektorów. Jeśli przycisk zmieni pozycję lub strona użyje innych nazw klas, agent może ponownie przeanalizować stan i znaleźć inny sposób działania. Może jednak również błędnie zinterpretować element lub obrać niewłaściwą ścieżkę, więc nie ma niezawodnej adaptacji.

Microsoft AI agent web-5
Powiązany artykuł:
Microsoft Powers Web Agentic: Otwarte, autonomiczne agenty AI, które przekształcą rozwój cyfrowy i współpracę

Różnice między korzystaniem z przeglądarki a tradycyjnym scrapowaniem stron internetowych

Tradycyjne scrapowanie wykorzystuje znane reguły do ​​lokalizowania i wyodrębniania informacji. Skrypt może wyszukiwać element za pomocą klasy CSS, atrybutu, wyrażenia XPath lub określonej ścieżki w dokumencie.

To podejście jest szybkie i niedrogie, jeśli strony zachowują stabilną strukturę. ułatwia audyt ponieważ wynik zależy od napisanego kodu, a nie od interpretacji modelu.

Użycie przeglądarki jest bardziej odpowiednie, gdy zadanie obejmuje nawigację, podejmowanie decyzji lub strony o różnej strukturze. Na przykład możesz wyszukać produkt w kilku sklepach, otworzyć wyniki, odrzucić opcje niespełniające określonych wymagań i zwrócić ostateczne porównanie.

Funkcja Tradycyjne skrobanie Korzystanie z przeglądarki
Kontrola Reguły i selektory definiowane przez kod Cele interpretowane przez agenta
Prędkość Ogólnie wysoki Uwarunkowane modelem i krokami
Koszt modeli Nie potrzebujesz tytułu LLM Zwykle wymaga wnioskowania
Dostosowanie Musisz zaktualizować zasady. Możesz ponownie zinterpretować stronę
Wyniki Deterministyczny, jeśli strona się nie zmienia Mogą się różnić w zależności od wykonania
Zalecane zastosowanie Duże wolumeny o znanej strukturze Zmienne zadania i złożone trasy
Ekskluzywna zawartość — kliknij tutaj  Jak słuchać wiadomości audio na iPhonie

Funkcja Browser Use może służyć do zbudowania warstwy automatyzacji na stronie internetowej bez interfejsu API, ale warstwa ta nadal będzie zależna od interfejsu. Przed podjęciem takiej decyzji sprawdź, czy istnieje oficjalne API i zapoznaj się z warunkami korzystania z usługi, uprawnieniami, limitami dostępu oraz obowiązującymi przepisami o ochronie danych.

Główne cechy korzystania z przeglądarki

Browser Use udostępnia różne komponenty umożliwiające tworzenie automatyzacji dostosowanych do każdego projektu:

  • Nawigacja autonomiczna: Agent może otwierać strony i decydować o kolejnych krokach.
  • Interakcja z formularzami: Wpisz tekst, wybierz opcje, naciśnij przyciski i załącz pliki.
  • Zarządzanie zakładkami: Możesz otwierać, zamykać i przełączać się między wieloma stronami.
  • Konfigurowalna wizja: Interpretuje przechwycenia, gdy struktura strony jest niewystarczająca.
  • Ustrukturyzowane wyniki: zweryfikuj odpowiedź, korzystając z modeli Pydantic.
  • Dane wrażliwe: wprowadź rzeczywiste wartości, nie umieszczając ich bezpośrednio w monicie.
  • Ograniczenia domeny: ogranicza liczbę stron, które przeglądarka może odwiedzić.
  • Profile i sesje: ponownie wykorzystuje istniejące pliki cookie lub stany uwierzytelniania.
  • Narzędzia niestandardowe: Dodaj własne działania dla konkretnych zadań.
  • Historia wykonania: Umożliwia sprawdzenie adresów URL, błędów, działań i czasu trwania.

Biblioteka open source może działać na Twoim komputerze, ale bazowy model może pozostać zewnętrzny. Praca lokalna w przeglądarce nie oznacza automatycznie, że wszystkie informacje pozostają na Twoim komputerze: powinieneś sprawdzić, jakie dane otrzymuje dostawca LLM i czy są wysyłane jakieś przechwyty.

Usługa Browser Use Cloud dodaje zarządzane przeglądarki, profile trwałe, serwery proxy, odciski palców i inne funkcje dla środowisk produkcyjnych. Funkcje te nie są koniecznie częścią podstawowej instalacji lokalnej i nie upoważniają do obchodzenia ograniczeń, kontroli dostępu ani warunków użytkowania.

Jak zainstalować przeglądarkę

Jak zainstalować przeglądarkę

Obecnie zaleca się używanie Pythona 3.12 i uv Aby utworzyć odizolowane środowisko. W systemie Windows możesz uruchomić:

pip install uv
uv venv --python 3.12
.venv\Scripts\activate
uv pip install browser-use
uvx browser-use install

W systemach macOS i Linux proces aktywacji środowiska wygląda inaczej:

pip install uv
uv venv --python 3.12
source .venv/bin/activate
uv pip install browser-use
uvx browser-use install

Ostatnie polecenie pobiera i przygotowuje Chromium do użycia w przeglądarce. Dlatego nie ma potrzeby jego instalacji. playwright i wykonaj playwright install chromium oddzielnie, aby zastosować się do bieżącego podstawowego przykładu.

Można dodatkowo zainstalować program Playwright, jeśli zamierzasz tworzyć niestandardowe narzędzia wykorzystujące jego deterministyczne interfejsy API w ramach tego samego projektu. Nie jest jednak wymagane uruchomienie pierwszego agenta.

Gemini AI Agent Android
Powiązany artykuł:
Gemini wkracza na rynek Androida: inteligentniejsze aplikacje i pełna automatyzacja na Twoim urządzeniu mobilnym

Jak skonfigurować model sztucznej inteligencji

Korzystanie z przeglądarki Możesz współpracować z różnymi dostawcami., w tym ich własny model, Google, OpenAI, Anthropic, Azure OpenAI, OpenRouter, Ollama i inne kompatybilne usługi.

Zapisz klucze w pliku .env i unikaj pisania ich bezpośrednio w skrypcie. Aby korzystać z Gemini, obecnie zalecana zmienna to:

GOOGLE_API_KEY=TU_CLAVE

Stara zmienna GEMINI_API_KEY W obecnej integracji jest nieaktualna. Dostępność i ograniczenia Google AI Studio za darmo mogą ulec zmianie, dlatego przed zaprojektowaniem automatyzacji, która na nich polega, należy sprawdzić aktualne warunki.

Aby użyć zoptymalizowanego modelu korzystania z przeglądarki:

BROWSER_USE_API_KEY=TU_CLAVE

Możesz również skonfigurować:

OPENAI_API_KEY=TU_CLAVE
ANTHROPIC_API_KEY=TU_CLAVE
OPENROUTER_API_KEY=TU_CLAVE

Nie przesyłaj pliku .env do Gita. Dodaj to do .gitignore i użyj menedżera sekretów podczas wdrażania agenta w środowisku produkcyjnym.

Jak utworzyć pierwszego agenta za pomocą przeglądarki

Utwórz plik o nazwie agente.pyW tym przykładzie użyto Gemini, wyświetlono przeglądarkę i ograniczono nawigację do określonej domeny:

import asyncio

from dotenv import load_dotenv
from browser_use import Agent, Browser, ChatGoogle

load_dotenv()

async def main():
    browser = Browser(
        headless=False,
        window_size={"width": 1440, "height": 900},
        allowed_domains=["news.ycombinator.com"],
    )

    agent = Agent(
        task=(
            "Abre Hacker News, localiza las cinco primeras noticias "
            "y devuelve su título y enlace."
        ),
        llm=ChatGoogle(model="gemini-2.5-flash"),
        browser=browser,
        use_vision="auto",
    )

    history = await agent.run(max_steps=15)

    print(history.final_result())
    print("Completado:", history.is_successful())
    print("Pasos:", history.number_of_steps())
    print("Duración:", history.total_duration_seconds())

if __name__ == "__main__":
    asyncio.run(main())

Prawidłowy parametr to taskNie jest używany task_description w obecnym API. Po zakończeniu, run() zwraca obiekt AgentHistoryList z pełną historią.

Ekskluzywna zawartość — kliknij tutaj  Jak dyktować w programie Word?

Z tego obiektu możesz wykonać zapytanie:

  • history.final_result() Do uzyskać wynik końcowy.
  • history.urls() Do przejrzyj odwiedzone strony.
  • history.errors() Do sprawdź błędy.
  • history.action_names() Do poznać podjęte działania.
  • history.number_of_steps() Do policz kroki.
  • history.total_duration_seconds() Do zmierzyć czas trwania.
  • history.is_successful() Do sprawdź czy zakończyło się pomyślnie.

Jak kontrolować działania, kroki i możliwe pętle

max_actions_per_step To ustawienie określa liczbę akcji, które model może zaproponować w jednym kroku. Obecnie domyślna wartość to cztery. Na przykład agent może uzupełnić kilka kolejnych pól przed ponowną analizą strony.

Ten parametr nie określa całkowitego czasu trwania ani nie zapobiega powstawaniu pętli. Aby ograniczyć całe wykonanie, należy użyć max_steps podczas dzwonienia run():

history = await agent.run(max_steps=20)

Inne istotne zmiany to:

  • maksymalna liczba_awarii: Ogranicza liczbę ponownych prób w przypadku wystąpienia błędów w krokach.
  • llm_timeout: określa, jak długo może trwać wywołanie modelu.
  • krok_limitu czasu: ograniczyć czas trwania każdego kompletnego kroku.
  • fallback_llm: Umożliwia przełączenie się na inny model w przypadku awarii głównego.
  • maksymalna_liczba_elementów_historii: kontroluje liczbę kroków zachowywanych przez kontekst agenta.
  • tryb_błysku: Zmniejsza część rozumowania, aby przyspieszyć wykonywanie zgodnych zadań.

Nie zwiększaj limitów bez powodu. Jeśli agent powtórzy czynność, sprawdź instrukcję, ogranicz domeny i dodaj jasne kryteria, aby określić, kiedy należy ją przerwać.

Powiązany artykuł:
Jak przeszukiwać sieć za pomocą Claude AI

Jak wyodrębnić dane strukturalne

Odpowiedź napisana w formie tekstu swobodnego może być trudna do zintegrowania z bazą danych. Funkcja Browser Use pozwala zdefiniować schemat wyjściowy za pomocą Pydantic w celu walidacji struktury końcowej.

import asyncio

from pydantic import BaseModel
from browser_use import Agent, ChatGoogle

class Noticia(BaseModel):
    titulo: str
    url: str

class Resultado(BaseModel):
    noticias: list[Noticia]

async def main():
    agent = Agent(
        task="Obtén las cinco primeras noticias de Hacker News.",
        llm=ChatGoogle(model="gemini-2.5-flash"),
        output_model_schema=Resultado,
    )

    history = await agent.run(max_steps=15)
    resultado = history.structured_output

    if resultado:
        for noticia in resultado.noticias:
            print(noticia.titulo, noticia.url)

asyncio.run(main())

Schemat pomaga wykrywać odpowiedzi niekompletne lub zawierające nieoczekiwane pola. Mimo to należy weryfikować adresy URL, usuwać duplikaty i weryfikować poprawność danych przed ich zapisaniem lub wykorzystaniem w ważnych decyzjach.

Jak chronić dane uwierzytelniające i poufne dane

Parametr sensitive_data Umożliwia powiązanie wartości prywatnych z nazwami referencyjnymi. Model otrzymuje zakładkę, a Browser Use wstawia rzeczywistą wartość bezpośrednio podczas działania na formularzu.

from browser_use import Agent, Browser, ChatGoogle

credenciales = {
    "https://*.ejemplo.com": {
        "usuario_privado": "[email protected]",
        "clave_privada": "contraseña-segura",
    }
}

browser = Browser(
    allowed_domains=["*.ejemplo.com"],
)

agent = Agent(
    task=(
        "Entra en https://app.ejemplo.com e inicia sesión con "
        "usuario_privado y clave_privada."
    ),
    llm=ChatGoogle(model="gemini-2.5-flash"),
    browser=browser,
    sensitive_data=credenciales,
    use_vision=False,
)

Wyłączenie widoczności uniemożliwia przesyłanie zrzutów stron do modelu. Jest to szczególnie ważne, gdy interfejs może wyświetlać dane osobowe, numery kont, historie lub informacje biznesowe.

Aby wzmocnić bezpieczeństwo:

  • Ogranicza nawigację według allowed_domains.
  • Powiąż każde poświadczenie tylko z domenami, które tego potrzebują.
  • Użyj kont z minimalna możliwa liczba zezwoleń.
  • Nie zezwalaj na dostęp ogólny do plików systemowych.
  • Poproś o potwierdzenie przed wysłaniem, zakupem, opublikowaniem lub usunięciem.
  • Używać izolowane profile dla każdej automatyzacji.
  • Przejrzyj swoją historię i odwiedzone domeny po każdym teście.

Zakładki zmniejszają ryzyko ujawnienia danych uwierzytelniających w monicie, ale nie eliminują wszystkich zagrożeń. Strona może próbować manipulować instrukcjami agenta, używając złośliwej zawartości, dlatego kluczowe działania wymagają zewnętrznych mechanizmów kontroli i deterministycznych walidacji.

Jak ponownie wykorzystać uwierzytelnioną sesję

Przeglądarka internetowa oferuje kilka sposobów na utrzymanie uwierzytelniania:

  • Prawdziwy profil Chrome'a: ponownie wykorzystuje istniejące sesje użytkowników.
  • Stan przechowywania: Załaduj pliki cookie i pamięć lokalną z pliku.
  • Profil chmury: Utrzymuje zarządzaną sesję w chmurze Browser Use Cloud.
  • CDP: łączy agenta ze zgodną instancją, która jest już uruchomiona.

W przypadku automatyzacji osobistej najprostszą opcją jest użycie prawdziwego profilu:

from browser_use import Agent, Browser, ChatGoogle

browser = Browser.from_system_chrome(
    profile_directory="Profile 1"
)

agent = Agent(
    task="Abre el panel de mi cuenta y descarga el último informe.",
    browser=browser,
    llm=ChatGoogle(model="gemini-2.5-flash"),
)

Przed uruchomieniem skryptu może być konieczne całkowite zamknięcie przeglądarki Chrome. Korzystanie z przeglądarki wymaga uruchomienia jej w trybie zgodności, a otwarty proces przeglądarki Chrome może zakłócać działanie profilu.

Ekskluzywna zawartość — kliknij tutaj  Microsoft Lens żegna się z systemami iOS i Android i przekazuje pałeczkę usłudze OneDrive

W przypadku produkcji lub CI bardziej odpowiednie jest wyeksportowanie stanu uwierzytelniania i załadowanie go w odizolowanej przeglądarce:

browser = Browser(storage_state="sesion.json")

Plik może zawierać pliki cookie i tokeny uwierzytelniające. Zabezpiecz go jak hasło, nie umieszczaj go w repozytorium i ogranicz jego uprawnienia do odczytu.

Jak połączyć się z przeglądarką za pomocą protokołu CDP

Protokół Chrome DevTools umożliwia sterowanie kompatybilną instancją za pośrednictwem adresu lokalnego lub zdalnego. Jeśli masz już skonfigurowaną przeglądarkę z funkcją zdalnego debugowania, możesz się z nią połączyć za pomocą:

from browser_use import Browser

browser = Browser(
    cdp_url="http://localhost:9222"
)

CDP ułatwia udostępnianie instancji przeglądarki lub łączenie się ze zdalnym dostawcą, ale nie pozwala na podejmowanie decyzji przez agenta w milisekundy. Działania przeglądarki mogą być szybkie, ale każdy krok wymagający modelu nadal będzie zależał od wnioskowania, sieci i dostarczonego kontekstu.

Nie udostępniaj portu debugowania w internecie. Osoba lub proces z dostępem do CDP może kontrolować karty, przeglądać widoczne informacje i wykorzystywać uwierzytelnione sesje. Ogranicz port do interfejsu lokalnego lub bezpiecznej sieci prywatnej.

Praktyczne zastosowania przeglądarek

Użycie przeglądarki jest szczególnie przydatne, gdy ścieżki nie da się opisać za pomocą pojedynczej, stabilnej struktury. możliwe scenariusze Czy:

  • Informacje badawcze rozmieszczone na różnych stronach.
  • Porównaj katalogi z różnymi projektami i filtrami.
  • Wypełnianie formularzy zmiennych pod nadzorem człowieka.
  • Pobieraj raporty z autoryzowanych portali biznesowych.
  • Klasyfikuj informacje przed wysłaniem ich do CRM.
  • Aby odkrywać nieprzewidywalne trasy.
  • Monitoruj zmiany na stronach, które nie mają odpowiedniego interfejsu API.
Najlepsze narzędzia do automatycznego zarządzania leadami z formularzy internetowych do CRM
Powiązany artykuł:
Najlepsze narzędzia do automatycznego zarządzania leadami z formularzy internetowych do CRM

Do monitorowania cen na dużą skalę zazwyczaj szybsze i tańsze jest skorzystanie z oficjalnego interfejsu API lub deterministycznego narzędzia do zbierania danych. Korzystanie z przeglądarki zwiększa wartość, gdy każdy sklep prezentuje inną ścieżkę. lub gdy konieczne jest zinterpretowanie warunków przed wyodrębnieniem wyniku.

W testowaniu oprogramowania Playwright może uzupełniać testy regresyjne, przeprowadzając eksplorację, odtwarzając przejścia opisane w języku naturalnym lub wykrywając nieoczekiwane zachowania. Nie powinien on jednak automatycznie zastępować testów regresyjnych, które muszą dawać ten sam wynik za każdym razem.

Przepływy pracy związane z bankowością, tożsamością, zatrudnieniem, opieką zdrowotną czy dokumentacją KYC wymagają szczególnej uwagi. Przed ich automatyzacją należy zweryfikować autoryzację, zminimalizować ilość przetwarzanych danych i wyznaczyć osobę odpowiedzialną za zatwierdzanie wrażliwych działań.

Kiedy nie zaleca się korzystania z przeglądarki?

Korzystanie z przeglądarki nie jest optymalnym rozwiązaniem dla wszystkich automatyzacji. Unikaj go lub łącz z narzędziami deterministycznymi, gdy:

  • Strona oferuje wystarczające oficjalne API.
  • Trzeba przetwarzać miliony stron o tej samej strukturze.
  • Operacja powinna dać dokładnie taki sam wynik.
  • Nieprawidłowe działanie może spowodować stratę finansową lub utratę danych.
  • Nie można wysłać zawartości strony do modelu zewnętrznego.
  • Opóźnienia wieloetapowe są niedopuszczalne.
  • Warunki świadczenia usług nie pozwalają na automatyzację.

Architektura hybrydowa zazwyczaj zapewnia lepsze rezultaty. Przeglądarka może zaplanować przechodzenie i rozwiązywać zmienne elementy, podczas gdy Playwright lub narzędzia niestandardowe wykonują kluczowe działania, korzystając ze znanych reguł.

Automatyzacja witryny internetowej z wykorzystaniem funkcji Browser Use obejmuje instalację biblioteki i przeglądarki, wybór kompatybilnego modelu, opisanie zadania i jasne określenie granic. Aby rozwiązanie było niezawodne, należy również zweryfikować dane wyjściowe, chronić dane uwierzytelniające, ograniczyć domeny i zdecydować, które kroki wymagają monitorowania.

Główną zaletą Browser Use nie jest całkowita eliminacja selektorów, ale raczej to, że pozwala modelowi dostosować ścieżkę, gdy nie jest w stanie przewidzieć wszystkich wariantów. Selektywne zastosowanie tej metody pozwala zredukować nakład pracy wymagany do tworzenia złożonych ankiet, formularzy i portali, bez rezygnowania z deterministycznej kontroli w najbardziej delikatnych operacjach.

Nawigator komet
Powiązany artykuł:
Comet, przeglądarka Perplexity oparta na sztucznej inteligencji: jak rewolucjonizuje przeglądanie stron internetowych