Tutorial sul burattinaio: un'eccellente guida all'apprendimento del tutorial sul burattinaio 1 e 2

The Puppeteer è un framework Java open source sviluppato con la libreria node-js. Il Burattinaio ha la capacità di funzionare come uno strumento di web scraping. Può essere utilizzato anche come automazione di test per applicazioni basate sul Web, proprio come il driver Web Selenium. La popolarità di Puppeteer sta aumentando rapidamente per l'automazione dei test. I prerequisiti per seguire il Tutorial di Puppeteer sono la conoscenza di base della riga di comando, di JavaScript, del concetto di OOP e della struttura DOM HTML. Il completo Tutorial burattinaio è distribuito in argomenti che sono menzionati nel seguente sommario. 

Tutorial burattinaio

Tutorial Tosca # 1: Panoramica del burattinaio

Tosca Tutorial # 2: Variabili d'ambiente del burattinaio

Tosca Tutorial # 3: Panoramica su Puppeteer Web Scraping e Puppeteer Test Automation

Tosca Tutorial # 4: Installa Puppeteer 

In questo articolo di Tutorial burattinaio, spiegheremo la panoramica del burattinaio e le variabili d'ambiente del burattinaio. 

Panoramica del burattinaio

Il Puppeteer è un framework java open source sviluppato con la libreria node-js. Puppeteer è in grado di controllare il browser Chrome tramite il protocollo devtool con l'aiuto dell'interfaccia dell'applicazione di alto livello (API). Il burattinaio è in grado di controllare browser Chrome headful e headless. 

Il framework Puppeteer è stato introdotto da Google. Per quanto riguarda la funzionalità, non è un nuovo concetto. Ma rende il lavoro più facile. Fondamentalmente, riassume un elenco di attività attraverso un pacchetto compatto.

Tutorial burattinaio - Burattinaio
Tutorial burattinaio – Burattinaio

Come funzionano i burattinai?

  • Puppeteer utilizza la libreria Node JS.
  • Il Node JS consente di utilizzare le API di alto livello.
  • Le API sono in grado di controllare il browser Chrome tramite il protocollo devtool.
  • Per impostazione predefinita, Puppeteer funziona con browser Chrome headless ma può interagire anche con browser Chrome headful modificando la configurazione predefinita.

Protocollo Chrome DevTools:

Utilizzando il protocollo Chrome DevTools, strumenti come Puppeteer sono in grado di strumentare, ispezionare, eseguire il debug e profilare i browser basati su blink come Chromium, Chrome, ecc.

Qui, la strumentazione del browser è suddivisa in una serie di domini come DOM, Debugger, Rete, ecc. Ogni dominio spiega tutti i diversi comandi supportati e gli eventi generati.

Caratteristiche del burattinaio:

  • I processi manuali tramite il browser Chrome possono essere automatizzati.
  • Può acquisire screenshot di qualsiasi pagina web e generare l'immagine o il file pdf dello screenshot.
  • È possibile sviluppare un'applicazione a pagina singola per il rendering lato server utilizzando Puppeteer.
  • Può automatizzare l'invio di moduli Web, il test dell'interfaccia utente, l'input da tastiera, ecc., Con punti di controllo.
  • Fornisce un maggiore controllo sul browser Chrome.
  • La modalità headless predefinita è molto veloce.
  • Supporta il web scraping.
  • Capacità di misurare il rendering e il tempo di caricamento utilizzando gli strumenti di analisi delle prestazioni di Chrome.

Burattinaio vs Burattinaio-core:

Poiché la versione Puppeteer v1.7.0, di seguito due pacchetti, sono disponibili in ogni versione -

  • pacchetto burattinaio-core
  • pacchetto burattinaio

Pacchetto burattinaio:

Burattinaio-core è una libreria Node di base java in grado di eseguire qualsiasi operazione che supporti il ​​protocollo DevTools. Il Puppeteer-core non scarica Chromium durante l'installazione. Come libreria, Puppeteer-core è completamente gestito attraverso la sua interfaccia programmatica. Inoltre, le funzionalità di Puppeteer-core non possono essere personalizzate da tutte le variabili PUPPETEER_ * env. Il comando di base per installare Puppeteer-core - 

npm install puppeteer-core
# or "yarn add puppeteer-core"

Quando si utilizza il burattinaio-core, le dichiarazioni di inclusione appariranno come di seguito:

const puppeteer = require('puppeteer-core')

Quando utilizzare Puppeteer-Core:

  • Sviluppare il progetto Puppeteer per utilizzare il browser Chrome esistente sul protocollo DevTools in cui non è richiesto il download di Chrome aggiuntivo.
  • Sviluppare un altro prodotto o libreria per l'utente finale sopra il protocollo DevTools. Ad esempio, un progetto può creare un generatore di screenshot utilizzando il core del burattinaio e scrivere uno script setup.js personalizzato che scarica headless_shell invece di Chromium per risparmiare spazio di archiviazione.

Pacchetto burattinaio:

burattinaio è un prodotto completo per l'automazione del browser Chrome o Chromium. Durante l'installazione, scarica l'ultima versione di Chromium, dopodiché è stata gestita dal burattinaio-core. Come prodotto per l'utente finale, Puppeteer supporta tutte le variabili PUPPETEER_ * env per personalizzarne il comportamento. Il comando di base per installare Puppeteer - 

npm install puppeteer
# or "yarn add puppeteer"

Quando usi Puppeteer, includi le dichiarazioni che appariranno come di seguito:

puppeteer = require(‘puppeteer’)

Differenza tra burattinaio e burattinaio-core:

  • Puppeteer-core non scarica automaticamente il browser Chromium durante l'installazione.
  • Puppeteer-core non considera tutte le variabili PUPPETEER_ * env.
  • Nella maggior parte dei progetti, stiamo utilizzando il pacchetto di prodotti Puppeteer.

Chrome senza testa:

Chrome headless significa che il burattinaio sta interagendo con un browser Chrome come applicazione in background, il che significa che l'interfaccia utente di Chrome non è visibile sullo schermo. Per impostazione predefinita, Puppeteer avvia l'applicazione come chrome headless. Esempio di codice per avviare Headless Chrome - 

In questo esempio, stiamo aprendo il chrome headless, ovvero l'interfaccia utente di Chrome non sarà visibile. Può essere fatto passando il flag headless come true al metodo Puppeteer.launch ().

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({ headless: true });
  // Specify statements for Headless Chrome operations  
  await browser.close();
})();

Cromo testardo:

Headful chrome significa che il burattinaio sta interagendo con un browser Chrome per il quale è visibile sullo schermo l'interfaccia utente di Chrome. Per impostazione predefinita, Puppeteer avvia l'applicazione come chrome headless. Esempio di codice per avviare Headful Chrome - 

In questo esempio, stiamo aprendo il chrome, che è visibile a noi. Può essere fatto passando il flag headless come false al metodo Puppeteer.launch ().

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({ headless: false});
  // Specify statements for Headless Chrome operations  
  await browser.close();
})();

Variabili d'ambiente del burattinaio

Puppeteer lavora con variabili d'ambiente predefinite per supportare le sue operazioni. Se Puppeteer non trova le variabili di ambiente durante l'installazione, verrà utilizzata una variante minuscola di queste variabili dalla configurazione di npm (gestisce il file di configurazione di NPM). Le variabili d'ambiente non sono considerate dal pacchetto Puppeteer-core. Le più importanti variabili d'ambiente di Puppeteer sono: 

  • PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: Indica di non scaricare Chromium in bundle durante la fase di installazione.
  • PUPPETEER_DOWNLOAD_HOST: Sovrascrive il prefisso URL che può essere utilizzato per scaricare Chromium. 
  • PUPPETEER_DOWNLOAD_PATH: Sovrascrive il percorso della cartella di download. Il percorso predefinito è - " /.local-chromium/ "dove è la radice del pacchetto di burattinaio.
  • HTTP_PROXY, HTTPS_PROXY, NO_PROXY: Queste variabili definiscono le impostazioni del proxy per scaricare Chromium durante l'installazione.
  • PUPPETEER_CHROMIUM_REVISIONE: Definisce una versione specifica di Chromium che deve essere utilizzata dal burattinaio.
  • PUPPETEER_EXECUTABLE_PATH: Specifica un percorso eseguibile da utilizzare nel metodo Puppeteer.launch. 
  • PUPPETEER_PRODUCT: Definisce quale browser deve essere utilizzato da Puppeteer. Il valore deve essere chrome o firefox. 

Conclusione:

In questo articolo introduttivo sull'esercitazione sul burattinaio, abbiamo appreso la panoramica del burattinaio e le variabili d'ambiente del burattinaio. Nel prossimo articolo del Tutorial burattinaio, impareremo a conoscere la panoramica di Puppeteer Web Scraping e Puppeteer Test Automation. Si prega di fare clic qui per visitare il portale di riferimento per questo tutorial burattinaio. Inoltre, fare clic su qui per imparare il selenio da LambdaGeeks.

Lascia un tuo commento