NodeJs Puppeteer #1 ~ Belajar Web Automation dengan Javascript dan Puppeteer
Puppeteer adalah merupakan framework yang digunakan untuk browser testing dengan menggunakan Node.js Library. Framework ini dikelola oleh tim Chrome DevTools. Sehingga sangat powerfull untuk browser google chrome. Selain itu Puppteer juga juga bisa digunakan untuk browser lain seperti Firefox dan Microsoft Edge akan tetapi selain chrome ,Puppeteri belum optimal dan memiliki dukungan terbatas. Dengan Puppteter memungkinkan seorang programer untuk berinteraksi dengan browser web sebagai objek, memanggil metode seperti .goto() atau .type() dan lain lain.
Dengan Puppteer kita akan leluasa untuk melakukan browser testing seperti web automation maupun web scrapping.
Keunggulan yang di dapat dengan menggunakan Puppeteer.
- Mudah untuk di konfigurasi
- Ekeskusi lebih cepat jika dibanding dengan selenium karena tidak menggunakan chromedeiver yang memakan memori lebih
- Lebih leluasa jika dibandingkan dengan imacros, uivision
- Memiliki komunitas yang bagus.
Kekurangan jika kita memakai Puppeteer
- Dukungan browser yang sedikit jika dibanding dengan selenium maupun playwright
- Secara official hanya support untuk Nodejs / Javascript. Walalupun ada Unnoficial module untuk program lain ( python , C# , Dart )
Persiapan yang perlu kita lakukan untuk menjalanakn puppeteer
- Install NodeJs
- Ide ( VSCODE )
- Install moddule Puppeteer ( npm i puppeteer )
Kodingan Standar Untuk menjalankan Puppteteer
const puppeteer = require('puppeteer')
async function startBrowser(){
const browser = await puppeteer.launch({headless:false})
const page = await browser.newPage()
await page.goto("https://example.org")
await page.screenshot({path: 'buddy-screenshot.png',fullPage : true});
await page.pdf({ path: 'pdf.pdf', format: 'A4' });
await new Promise(r => setTimeout(r, 4000));
await browser.close()
}
startBrowser();