🎯 Um navegador em nuvem personalizável e anti-detecção alimentado por Chromium desenvolvido internamente, projetado para rastreadores web e agentes de IA. 👉Experimente agora
De volta ao blog

Skyvern + Navegador de Raspagem Sem Resíduos: Um Agente de IA na Nuvem

Ethan Brown
Ethan Brown

Advanced Bot Mitigation Engineer

05-Aug-2026

Skyvern é um agente de navegador que decide o que fazer analisando a página: ele captura uma captura de tela da tela, um modelo de visão lê isso e o agente clica, digita ou lê com base no que vê. Direcione o navegador do agente para o Scrapeless Scraping Browser através do Chrome DevTools Protocol e ele controla um Chromium na nuvem com saída residencial em vez de um navegador que você executa e oculta em sua própria máquina.

A combinação é uma escolha natural. Skyvern fornece o raciocínio — transforma um objetivo em linguagem simples em uma sequência de ações do navegador — e o Scraping Browser fornece o ambiente de execução no qual o agente atua. Este guia instala o runtime local do Skyvern, o direciona para o Scrapeless Scraping Browser através de uma conexão CDP, lhe entrega um objetivo em uma frase e assiste ao cumprimento da tarefa, com a execução do agente feita ao vivo contra o navegador na nuvem.

Por que executar o Skyvern no Scrapeless Scraping Browser

Um agente de visão é tão útil quanto o navegador que ele controla. Execute o Skyvern contra um Chromium local e você possui todo o ambiente de execução: o processo do navegador, sua memória, seu único IP de saída e o que um site movimentado faz com esse IP. Direcionando-o para o Scraping Browser, essa parte se desloca para a nuvem — o agente se conecta via CDP a uma sessão do Chromium que o Scrapeless renderiza e mantém, com saída residencial que você pode vincular a um país. Os detalhes da conexão que ele utiliza são aqueles na documentação do Scraping Browser.

Nada sobre o agente muda. Skyvern ainda captura telas, raciocina e age; ele simplesmente atua dentro de um navegador na nuvem acessado através de um WebSocket em vez de um local. Isso mantém o raciocínio do seu lado e a frota de navegadores do lado do Scrapeless, que é a divisão desejada quando um objetivo abrange muitas páginas ou um site é seletivo quanto ao tráfego que serve.

Pré-requisitos

Você precisa do Python 3.11 ou mais recente, do extra local do Skyvern, de uma chave da API Scrapeless para a sessão do navegador e de uma chave para um modelo com capacidade de visão. Obtenha a chave Scrapeless no plano gratuito em app.scrapeless.com. O modo local do Skyvern executa o agente no processo, portanto, não é necessário um servidor ou banco de dados separado para a execução abaixo.

Instalação

Instale o Skyvern com o extra local, que puxa o ambiente de execução do agente integrado:

bash Copy
pip install "skyvern[local]"

Configuração

Duas chaves vão no ambiente: a chave Scrapeless para o navegador e a chave do modelo para as chamadas de visão do agente.

bash Copy
export SCRAPELESS_API_KEY="sua_chave_api_scrapeless"
export OPENROUTER_API_KEY="sua_chave_api_modelo"

O Skyvern lê sua configuração de navegador e modelo das configurações, então defina-as no código antes de construir o cliente: BROWSER_TYPE=cdp-connect informa ao Skyvern para se conectar a um navegador existente, BROWSER_REMOTE_DEBUGGING_URL é o endpoint CDP do Scrapeless, e as configurações do OpenRouter selecionam um modelo com capacidade de visão. Depois, Skyvern.local() executa o agente em processo e run_task recebe o objetivo como uma frase. A conexão usa o Chrome DevTools Protocol sobre o protocolo WebSocket:

python Copy
import os
from urllib.parse import urlencode

TOKEN = os.environ["SCRAPELESS_API_KEY"]
CDP_URL = "wss://browser.scrapeless.com/api/v2/browser?" + urlencode(
    {"token": TOKEN, "sessionTTL": 300, "proxyCountry": "US"})

os.environ.update({
    "BROWSER_TYPE": "cdp-connect",
    "BROWSER_REMOTE_DEBUGGING_URL": CDP_URL,
    "ENABLE_OPENROUTER": "true",
    "OPENROUTER_MODEL": "google/gemini-2.5-flash-lite",
    "LLM_KEY": "OPENROUTER",
    "LLM_CONFIG_SUPPORT_VISION": "true",
})

import asyncio
from skyvern import Skyvern

async def main():
    skyvern = Skyvern.local(use_in_memory_db=True)
    task = await skyvern.run_task(
        prompt="Encontre a primeira citação na página e relate o nome de seu autor.",
        url="https://quotes.toscrape.com/",
        wait_for_completion=True,
        max_steps=3,
    )
    print("status da tarefa:", task.status)
    print("motor:", task.run_request.engine)

asyncio.run(main())

O agente se conecta ao navegador na nuvem, trabalha no objetivo e finaliza:

text Copy
status da tarefa: concluída
motor: skyvern-1.0

Obtenha sua chave API no plano gratuito: app.scrapeless.com

O que o agente realmente fez

Por trás daquela linha de status, o Skyvern executou seu loop contra o navegador Scrapeless. Ele capturou uma captura de tela da página renderizada, enviou a imagem para o modelo de visão com o objetivo, e o modelo retornou uma ação — aqui ele reconheceu que a primeira citação e seu autor já estavam na tela e marcou o objetivo como completo. Em uma tarefa que requer interação, o mesmo loop clica em um botão, preenche um campo ou rola, faz uma nova captura de tela e re-examina, até o max_steps que você definir. Cada uma dessas ações é executada dentro do Chromium na nuvem, não na sua máquina, e o proxyCountry na conexão decide de onde o tráfego sai.

Um agente que atua em seu nome ainda trabalha dentro dos limites de um site: aponte-o para páginas públicas, respeite os termos do site e suas diretivas do Protocolo de Exclusão de Robôs, e mantenha o orçamento de etapas modesto. A divisão de trabalho é o ponto: o Skyvern toma as decisões e o Navegador de Extração possui o navegador. Para outra estrutura de agente no mesmo runtime, o guia sobre executar o Uso de Navegador no Scrapeless cobre a mesma conexão a partir de um agente diferente.

Conclusão

O Skyvern transforma uma frase em ações do navegador, e o Navegador de Extração Scrapeless dá a essas ações um runtime na nuvem para acontecer. Defina BROWSER_TYPE=cdp-connect com o endpoint Scrapeless CDP, execute Skyvern.local() com um modelo capaz de visão, e o agente controla um Chromium na nuvem com saída residencial — a execução acima completou um objetivo de ponta a ponta sem navegador local em nenhum lugar. Veja o que o runtime oferece na página do produto Navegador de Extração e pese o volume de agentes, que consome tanto tempo de navegador quanto tokens de modelo, contra a página de preços antes de escalar.

Junte-se à nossa comunidade para reivindicar um plano gratuito e trocar informações com outros desenvolvedores que constroem agentes de navegador: Discord · Telegram.

Perguntas Frequentes

P: O que o Skyvern faz que um script não faz?

O Skyvern decide as ações em vez de você codificá-las. Ele captura uma captura de tela da página, um modelo de visão lê a captura em relação ao seu objetivo, e o agente escolhe o que clicar, digitar ou ler — assim, ele se adapta a um layout que não viu em vez de seguir seletores que você codificou rigidamente.

P: Como o Skyvern se conecta ao Navegador de Extração Scrapeless?

Através de uma conexão CDP. Defina BROWSER_TYPE=cdp-connect e BROWSER_REMOTE_DEBUGGING_URL para o endpoint Scrapeless wss://browser.scrapeless.com/api/v2/browser?token=..., e o Skyvern se conecta a esse Chromium na nuvem em vez de iniciar um navegador local.

P: Preciso de um banco de dados Postgres ou de um servidor em execução?

Não para isso. Skyvern.local(use_in_memory_db=True) executa o agente em processo com um banco de dados em memória, o que é suficiente para conduzir uma tarefa. Um servidor separado e Postgres são necessários apenas para o serviço Skyvern auto-hospedado, não para a execução local mostrada aqui.

P: Qual modelo o agente usa?

Um modelo capaz de visão, porque o agente raciocina sobre capturas de tela. O exemplo se encaminha para google/gemini-2.5-flash-lite através do OpenRouter com LLM_CONFIG_SUPPORT_VISION=true; o Skyvern também suporta OpenAI, Anthropic, Gemini e outros provedores através das mesmas configurações.

P: Como evito que o agente execute por muito tempo?

Defina max_steps na tarefa. Cada passo é um ciclo de captura de tela-raciocínio-ação, então um orçamento pequeno limita quantas ações — e quantas chamadas de modelo — uma única tarefa pode realizar antes de parar.

P: De onde vem o tráfego?

Do egress residencial do navegador cloud Scrapeless, não da sua máquina. O parâmetro proxyCountry na URL da conexão fixa esse egress a um país, que é o que uma página com geo-bloqueio utiliza para chaves de conteúdo.

P: Posso executar uma estrutura de agente diferente da mesma maneira?

Sim. Qualquer agente que se conecta a um navegador via CDP pode se conectar ao mesmo endpoint Scrapeless, assim, o runtime é compartilhado entre estruturas enquanto cada uma traz seu próprio raciocínio.

Na Scorretless, acessamos apenas dados disponíveis ao público, enquanto cumprem estritamente as leis, regulamentos e políticas de privacidade do site aplicáveis. O conteúdo deste blog é apenas para fins de demonstração e não envolve atividades ilegais ou infratoras. Não temos garantias e negamos toda a responsabilidade pelo uso de informações deste blog ou links de terceiros. Antes de se envolver em qualquer atividade de raspagem, consulte seu consultor jurídico e revise os termos de serviço do site de destino ou obtenha as permissões necessárias.

Artigos mais populares

Catálogo