Introdução geral
O Browser-Use é uma ferramenta inovadora de automação da Web de código aberto, projetada especificamente para permitir que os modelos de linguagem (LLMs) interajam naturalmente com os sites. Ele oferece uma estrutura avançada e flexível que suporta uma ampla gama de modelos de linguagem convencionais, incluindo GPT-4, Claude e outros. O recurso mais notável da ferramenta é a integração perfeita dos recursos de IA com a automação do navegador, suportando reconhecimento visual e extração de HTML, gerenciamento automático de páginas com várias guias, detecção inteligente de elementos etc. O Browser-Use não só executa tarefas simples de navegação na Web, mas também lida com cenários de interação complexos, como preenchimento automático de formulários, envio de aplicativos e busca de informações. Ele foi projetado para permitir que os agentes de IA usem os navegadores de forma tão natural quanto os humanos, simplificando muito o processo de desenvolvimento da automação da Web. A ferramenta é especialmente adequada para desenvolvedores que precisam executar automação da Web, coleta de dados e operações em lote.
Lista de funções
- Oferece suporte ao reconhecimento visual e à extração inteligente de conteúdo HTML
- Sistema automatizado de gerenciamento de páginas com várias abas
- Extrai caminhos XPath de elementos clicados e reproduz operações LLM exatas.
- Suporte a ações personalizadas (por exemplo, salvar arquivo, enviar banco de dados, enviar notificação, obter entrada manual)
- Capacidade de autocorreção
- Compatível com todos os modelos de idiomas suportados pelo LangChain
- Suporte para a execução de vários agentes de IA em paralelo
- Recursos de segurança configuráveis do navegador
- Função de armazenamento persistente de cookies
- Configurações flexíveis do tempo de espera de carregamento da página
Usando a Ajuda
1. configuração da instalação
- Primeiro, instale o pacote Browser-Use via pip:
pip install browser-use
- (Opcional) Instale o dramaturgo:
instalação de dramaturgo
- Configurar variáveis de ambiente:
estabelecer.env
e adicione as chaves de API necessárias:
OPENAI_API_KEY=sua chave de API OpenAI
ANTHROPIC_API_KEY=sua chave de API do Anthropic.
2. uso básico
2.1 Criação de um agente de IA simples
de langchain_openai import ChatOpenAI
from browser_use import Agent
importar asyncio
async def main(): agent = Agent()
agente = Agente(
task="Localizar informações sobre um voo específico", llm=ChatOpenAI(model="ChatOpenAI", "ChatOpenAI")
llm=ChatOpenAI(model="gpt-4"), )
)
result = await agent.run()
print(result)
asyncio.run(main())
2.2 Registro de ações personalizadas
Ações personalizadas podem ser adicionadas por meio de decoradores:
de browser_use.controller.service import Controller
controlador = Controlador()
@controller.action('Pedir informações ao usuário')
def ask_human(question: str, display_question: bool) -> str.
return input(f'\n{question}\nInput: ')
2.3 Definição de modelos paramétricos usando o Pydantic
from pydantic import BaseModel
from typing import Optional
class JobDetails(BaseModel).
título: str
empresa: str
job_link: str
salário: Optional[str] = None
@controller.action('Save Job Details', 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. uso de funções avançadas
3.1 Agentes de paralelização
Recomenda-se usar uma única instância do navegador e paralelizar o contexto para cada agente:
navegador = Navegador()
for i in range(10): async with browser.new_context() as context
async with browser.new_context() as context.
agent = Agent(
task=f "Task {i}", llm=model, task=f "Task {i}", async with browser.new_context()
task=f "Task {i}", llm=model, browser_context=context
browser_context=context
)
# Processando tarefas...
3.2 Configuração do navegador
O comportamento do navegador pode ser configurado por meio das classes BrowserConfig e BrowserContextConfig:
browser_config = BrowserConfig(
headless=False, # Se deve ou não usar o modo headless
keep_open=True, # Mantém o navegador aberto depois que o script é concluído
disable_security=True, # Desativa os recursos de segurança
cookies_file="cookies.json", # Arquivo de armazenamento de cookies
minimum_wait_page_load_time=1.0, # Espera mínima para o tempo de carregamento da página
wait_for_network_idle_page_load_time=2.0, # Tempo de espera de ociosidade da rede
maximum_wait_page_load_time=10,0 # Tempo máximo de espera para carregamento da página
)
4. recomendações de otimização de desempenho
- Use tempos de espera de carregamento de página adequados para evitar esperas excessivas
- Uso racional dos recursos de paralelização para aumentar a eficiência do processamento
- Ativar o modo headless quando apropriado para reduzir o uso de recursos
- Reduzindo a autenticação duplicada com a persistência de cookies
- Ajuste a configuração dos recursos de segurança conforme necessário
5 Solução de problemas
- Se você tiver problemas com solicitações entre domínios, considere a possibilidade de ativar
disable_security
opções (como nas configurações de software de computador) - Tempo limite de carregamento da página com parâmetro de tempo de espera ajustável
- Certifique-se de que a chave da API esteja configurada corretamente
- Verificar o status da conexão de rede
- Verifique o registro do console do navegador para obter mensagens de erro detalhadas