Selenium Scraper
O SeleniumScrapingTool
foi desenvolvido para extrair e ler o conteúdo de um site específico utilizando o Selenium.
SeleniumScrapingTool
Esta ferramenta está atualmente em desenvolvimento. Conforme aprimoramos suas capacidades, os usuários podem encontrar comportamentos inesperados. Seu feedback é inestimável para que possamos melhorar.
Descrição
O SeleniumScrapingTool
foi criado para tarefas de raspagem web de alta eficiência.
Permite a extração precisa de conteúdo de páginas web utilizando seletores CSS para direcionar elementos específicos.
Seu design atende a uma ampla gama de necessidades de scraping, oferecendo flexibilidade para trabalhar com qualquer URL de site fornecida.
Instalação
Para utilizar esta ferramenta, é necessário instalar o pacote CrewAI tools e o Selenium:
Você também precisará ter o Chrome instalado em seu sistema, pois a ferramenta utiliza o Chrome WebDriver para automação do navegador.
Exemplo
O exemplo a seguir demonstra como usar o SeleniumScrapingTool
com um agente CrewAI:
Você também pode inicializar a ferramenta com parâmetros predefinidos:
Parâmetros
O SeleniumScrapingTool
aceita os seguintes parâmetros durante a inicialização:
- website_url: Opcional. A URL do site a ser raspado. Se fornecido durante a inicialização, o agente não precisará especificá-lo ao utilizar a ferramenta.
- css_element: Opcional. O seletor CSS dos elementos a serem extraídos. Se fornecido durante a inicialização, o agente não precisará especificá-lo ao utilizar a ferramenta.
- cookie: Opcional. Um dicionário contendo informações de cookies, útil para simular uma sessão logada e acessar conteúdo restrito.
- wait_time: Opcional. Especifica o atraso (em segundos) antes da raspagem, permitindo que o site e qualquer conteúdo dinâmico carreguem totalmente. O padrão é
3
segundos. - return_html: Opcional. Indica se o conteúdo HTML deve ser retornado em vez do texto simples. O padrão é
False
.
Ao usar a ferramenta com um agente, o agente precisará fornecer os seguintes parâmetros (a menos que tenham sido especificados durante a inicialização):
- website_url: Obrigatório. A URL do site a ser raspado.
- css_element: Obrigatório. O seletor CSS dos elementos a serem extraídos.
Exemplo de Integração com Agente
Aqui está um exemplo mais detalhado de como integrar o SeleniumScrapingTool
com um agente CrewAI:
Detalhes de Implementação
O SeleniumScrapingTool
utiliza o Selenium WebDriver para automatizar interações com o navegador:
A ferramenta executa as seguintes etapas:
- Cria uma instância do Chrome em modo headless
- Navega até a URL especificada
- Aguarda o tempo especificado para permitir o carregamento da página
- Adiciona cookies se fornecidos
- Extrai conteúdo baseado no seletor CSS
- Retorna o conteúdo extraído como texto ou HTML
- Encerra a instância do navegador
Tratamento de Conteúdo Dinâmico
O SeleniumScrapingTool
é especialmente útil para extrair sites com conteúdo dinâmico carregado via JavaScript. Usando uma instância real de navegador, ele pode:
- Executar JavaScript na página
- Aguardar o carregamento do conteúdo dinâmico
- Interagir com elementos se necessário
- Extrair conteúdo que não estaria disponível usando apenas requisições HTTP simples
Você pode ajustar o parâmetro wait_time
para garantir que todo o conteúdo dinâmico tenha sido carregado antes da extração.
Conclusão
O SeleniumScrapingTool
fornece uma maneira poderosa de extrair conteúdo de sites utilizando automação de navegador. Ao permitir que agentes interajam com sites como um usuário real, ele facilita a raspagem de conteúdo dinâmico que seria difícil ou impossível de extrair utilizando métodos mais simples. Esta ferramenta é especialmente útil para pesquisas, coleta de dados e tarefas de monitoramento que envolvem aplicações web modernas com conteúdo renderizado por JavaScript.