Belajar Puppeteer #1: Instalasi dan Cara Penggunaan
![]() | Lazuardy Khatulistiwa Software Engineer |
16 Agt 2020, 1 min read |
Apa itu Puppeteer?
Di laman resminya, Google mengatakan bahwa Puppeteer adalah sebuah library NodeJS yang menyediakan API tingkat tinggi untuk mengendalikan browser Chrome atau Chromium melalui DevTools Protocol, library ini juga bisa dikonfigurasi agar menampilkan browsernya secara real (tidak headless).
Dari pengertian diatas, bisa kita simpulkan puppeteer ini bisa kita manfaatkan untuk melakukan pekerjaan yang browser kita bisa lakukan. Seperti mengunjungi website, melakukan klik pada element tertentu, membuat sebuah tab baru, dan lain-lain.
Instalasi
Pastikan komputer kalian terinstall tools berikut:
1. NodeJS
2. NPM
Setelah itu, buat folder untuk project baru dan install library dengan ketik perintah berikut di cmd/terminal:
npm install puppeteer --save
Tunggu sampai proses instalasi selesai.
Cara Penggunaan
1. Inisiasi Library
Berikut adalah kode untuk inisiasi library yang diperlukan sebelum memulai:
const puppeteer = require('puppeteer');
Saya juga membuat sebuah konstanta bernama puppeteer yang nantinya akan kita pakai,
2. Membuka Browser dan Membuat Tab Baru
Setelah inisiasi, kita harus membuka browser terlebih dahulu menggunakan fungsi launch dan membuat tab dengan fungsi newPage. Perlu diketahui, semua fungsi dari library Puppeteer adalah fungsi asynchronous. Untuk menangani ini kita bisa pakai metode then atau await, tetapi saya lebih menyukai await :P
Jadi, mari kita bungkus kodenya dengan fungsi async untuk melakukan await. Sehingga kodenya seperti ini:
async function main(){
const browser = await puppeteer.launch({ headless:false });
const page = await browser.newPage();
}
main();
Pada fungsi launch diatas, saya berikan argument berupa object yang berisi key headless
dan valuenya false
agar browser terlihat di komputer kita, karena defaultnya konfigurasi Puppeteer adalah browsernya tidak terlihat (headless).
3. Mengunjungi Website
Untuk mengunjungi sebuah URL, kita dapat menggunakan fungsi goto yang menerima parameter sebuah URL:
await page.goto("https://google.co.id/");
Nantinya browser akan otomatis membuka URL tersebut.
4. Menutup Browser
Untuk menutup browser, kita dapat memakai fungsi close:
await browser.close();
Ini penting untuk menutup browser, jika kita tidak menutupnya, maka proses script tidak akan berhenti.
Kesimpulan
Seluruh kode dari inisiasi sampai menutup browser akan menjadi seperti ini:
const puppeteer = require('puppeteer');
async function main(){
const browser = await puppeteer.launch({ headless:false });
const page = await browser.newPage();
await page.goto("https://google.co.id/");
await browser.close();
}
main();
That's it.
Apa selanjutnya?
Selanjutnya kita akan belajar untuk mengisi form, melakukan klik pada element, atau mengekstrak data dari suatu website.
Tags: