Jit-Browser Parte da plataforma Jit-4 EN-CA |

HeadlessChrome101: Como o Jit-Browser Transforma o Chrome Numa Camada de Navegador–Servidor de Multi-Função

Este é um guia em linguagem simples sobre o que o Jit-Browser faz com o Chrome headless, como utiliza o runtime proprietário Jit-TR e o que ainda é necessário para tornar isso uma funcionalidade de navegador de primeira classe em vez de apenas mais um script.

De uma simples ferramenta de captura de ecrã ao Jit-Browser

Começámos com uma pequena ferramenta de linha de comando: getpage https://example.com page.png. Ela iniciou o Chrome num container Docker, tirou uma captura de ecrã do example.com renderizado a partir da página e saiu.

Prova de conceito útil. Cada chamada era um arranque a frio. Não sabia nada sobre tradução, sessões ou estado. Era apenas uma câmara headless.

O Jit-Browser é o próximo passo. Ele ainda usa o Chrome real, mas agora:

  • Regista o que acontece dentro da página.
  • Injeta o script Jit-TR como uma camada de tradução.
  • Pode seguir fluxos simples como banners de cookies ou menus suspensos.
  • Captura o HTML totalmente traduzido, não apenas uma captura de ecrã.

Esta página explica esse pipeline para que você possa ver que não estamos a fazer promessas vazias. Estamos a mostrar como uma camada multilíngue a nível de navegador pode realmente funcionar.

O pipeline do Jit-Browser em 6 passos

A um alto nível, cada captura segue a mesma sequência.

  1. Lançar o Chrome real (headless) dentro do Docker.
    Usamos o Puppeteer (pptr.dev) para iniciar o mesmo motor que alimenta navegadores normais, mas sem uma janela visível. Sem parser personalizado, sem renderização falsa.
  2. Aplicar cookies ou estado de login (se configurado).
    Para demonstrações que precisam de uma sessão autenticada, reproduzimos os seus cookies. Sem força bruta, sem adivinhação de senhas, sem scraping de contas que não controlamos.
  3. Carregar a página alvo exatamente como um utilizador.
    HTML, CSS, JavaScript, fontes, imagens. Esperamos por networkidle2 (https://pptr.dev/api/puppeteer.page.waitfornetworkidle) para que pacotes lentos e fontes possam terminar de carregar.
  4. Injetar o snippet Jit-TR como uma camada.
    Adicionamos uma tag de script apontando para o nosso código de runtime com patente pendente – por exemplo: