Scraping BrowserBibliotecasPuppeteer

Puppeteer

O Scraping Browser fornece uma plataforma serverless de alto desempenho, projetada para simplificar o processo de extração de dados de sites dinâmicos. Por meio da integração perfeita com o Puppeteer, os desenvolvedores podem executar, gerenciar e monitorar navegadores headless sem precisar de um servidor dedicado, permitindo automação da web eficiente e coleta de dados.

Instalando Bibliotecas Necessárias

Primeiro, instale puppeteer-core, uma versão leve do Puppeteer projetada para conectar a instâncias de navegador existentes:

npm install puppeteer-core

Escrevendo Código para se Conectar ao Scraping Browser

Em seu código Puppeteer, conecte-se ao Scraping Browser usando o seguinte:

const { Puppeteer } = require('@scrapeless-ai/sdk');
 
(async () => {
    const browser = await Puppeteer.connect({
        session_name: 'sdk_test',
        session_ttl: 180,
        proxy_country: 'US',
        session_recording: true,
        defaultViewport: null
    });
 
    const page = await browser.newPage();
    await page.goto('https://www.scrapeless.com');
    console.log(await page.title());
    await browser.close();
})();

Isso permite que você aproveite a infraestrutura do Scraping Browser, incluindo escalabilidade, rotação de IP e acesso global.

Exemplos Práticos

Aqui estão algumas operações comuns do Puppeteer após a integração do Scraping Browser:

  1. Navegação e Extração de Conteúdo da Página
const page = await browser.newPage();
await page.goto('https://www.example.com');
console.log(await page.title());
const html = await page.content();
console.log(html);
await browser.close();
 
  1. Tirando Capturas de Tela
const page = await browser.newPage();
await page.goto('https://www.example.com');
await page.screenshot({ path: 'example.png' });
console.log('Screenshot salvo como example.png');
await browser.close();
 
  1. Executando Código Personalizado
const page = await browser.newPage();
await page.goto('https://www.example.com');
const result = await page.evaluate(() => document.title);
console.log('Título da página:', result);
await browser.close();
 
  1. Simula um clique do mouse.
await page.realClick('button[type="submit"]');
  1. Simula entrada de teclado.
await page.realFill('#login-email', 'scrapeless@gmail.com');