Pengen Belajar Otomasi Web? Yuk, Kenalan dengan Selenium

 

Pengen Belajar Otomasi Web? Yuk, Kenal dengan Selenium


Pengen Belajar Otomasi Web? Yuk, Kenal dengan Selenium - Yosh sobs-sobs berjumpa lagi dengan pujangga tampan dan rupawan, gimana keadaan kalian ? Semoga dalam keadaan sehat walafiat. yang pasti wajib sehat dongg, karena dengan sehat kita bisa menikmati syahdunya kopi hitam panas. Sruputtt Ahhh



Oke langsung aja keburu kopi gua dingin, pada kesempatan kali ini gua akan menulis seputar topik Otomasi ? Hah apaan tuh otomasi. oke kita loncat aja ke pengertian atau definisi dari Otomasi itu sendiri.

1.    Definisi Otomasi

Jadi setelah gua nyebur ke kolam tetangga sebelah untuk mencari definisi otomasi akhirnya gua dapat menemukannya ya walaupun sedikit agak lama tahan nafas.

Jadi begini sobs Otomasi adalah proses dimana suatu tugas atau pekerjaan dilakukan secara otomatis baik itu menggunakan mesin, software, atau sistem apa pun tanpa ada campur tangan kita sobs.
contoh sederhananya seperti pintu-pintu di Mal-Mal, perkantoran atau dimana pun itu lah, pintu yang otomatis terbuka jika kita ingin masuk atau keluar, kenapa pintu itu bisa otomatis terbuka ? ya karena ada beberapa perangkat yang membuat pintu tersebut bisa terbuka seperti sensor yang bisa membaca apakah ada pergerakan dalam radius yang sudah ditentukan, jika Ia maka program yang tertanam dikomponen pintu akan menginstruksikan untuk buka pintu. 

Tapi bang kok gua pernah lihat ada pintu tapi engga ada orang kebuka sendiri ??? Nah itu sobs-sobs pikir kira-kira yang lewat olang atau bukan. Hehehe

2.    Selenium

Kita sudah mengetahui definisi dari otomasi, mari kita beranjak ke apa itu selenium, sederhananya begini sobs-sobs, Selenium adalah sebuah alat yang digunakan untuk mengotomasi baik untuk untuk pengujian (testing), scraping (pengumpulan data) pada website. jadi dengan kata lain dengan selenium kita bisa membuat program yang secara otomatis membuka browser, mengklik tombol, mengisi sebuah form, scrolling atau interaksi apapun yang bisa dilakukan dalam suatu website.

2.1    Contoh penggunaan sederhana

Misal begini sobs, gua ingin melakukan proses otomasi untuk login ke sebuah situs dengan si abang-abangan Selenium ini, maka gua akan buat skripsi kurang lebihnya begini :

1.    Membuka browser. 

2.    Mengunjungi halaman login. 

3.    Mengisi username dan password. 

4.    Mengklik tombol login. 

5.    Mengecek apakah login berhasil.


oke mungkin itu sih contoh yang sederhana sobs-sobs. kita masuk ke selanjutnya

3.    Komponen Selenium

Sebelum lebih jauh kita belajar otomasi dengan selenium, ada baiknya kita mengenal komponen-komponen selenium sobs-sobs :

3.1    Web Driver

👉    Penjelasan

Jadi begini sobs web driver ini adalah komponen utama atau yang memungkinkan si selenium ini untuk mengontrol browser secara otomatis.

👉    Fungsi

*Untuk menghubungkan selenium dengan browser seperti ( Google Chrome, Firefox, Edge dll ) 

*Selain fungsi untuk menghubungkan selenium dengan browser, fungsi berikutnya adalah menjalankan perintah kita seperti membuka suatu halaman website, mengklik suatu tombol, input form dll.

👉    Software

Masing-masing browser mempunyai web drivernya sendiri-sendiri oleh karena itu kita tinggal download saja menyesuaikan dengan browser yang ingin kita gunakan, seperti : 

chromedriver.exe untuk (Google Chrome) 

geckodriver.exe untuk (Mozila Firefox) 

msedgedriver.exe untuk (Edge)

 Oke sobs-sobs bisa memilih dan mendownloadnya.


3.2    Browser yang didukung

👉    Penjelasan

Maksud browser yang didukung adalah selenium dapat berkerja dengan browser yang support, artinya jika kita menggunakan browser yang tidak didukung maka selenium tidak dapat berkerja. contoh browser yang support sepert (Google Chrome, Firefox, dan Edge).

👉    Fungsi

Jika browser yang sebelunmya kita install seperti chrome, firefox atau edge, maka fungsi browser sebagai tempat menjankan perintah script kita sobs.

 ðŸ‘‰    Catatan

Pastiin versi web driver yang sudah kita download cocok dengan versi browser yang kita gunakan.


3.3    Bahasa Pemrograman

👉    Penjelasan

Selenium ini sobs bisa digunakan dengan beberapa bahasa perograman seperti python, javascript, java, ruby dan kootlin.

👉    Fungsi

 untuk menulis skrip untuk mengontrol selenium sesuai dengan kebutuhan kita ya sobs.

👉    Contoh

from selenium import webdriver

driver = webdriver.Chrome()  # Menggunaka driver Chrome
driver.get("https://www.google.com")  # Membuka sruputkode.com
diatas contoh sederhana untuk membuka website sruputkode.com


3.4    Selenium Library

👉    Penjelasan 

Si abang-abangan selenium ini tidak bisa sendiri sobs, dia perlu juga library sesuai dengan bahasa pemrograman yang kita gunakan.

👉    Fungsi

Menghubungkan selenium dengan bahasa pemrograman untuk menulis skrip otomatisnya sobs.

👉    Cara instalasi

- Python : pip install selenium

- Java : Menggunakan Selenium JAR

 

3.5    Locator (Xpath, CSS Selector, dll)

👉     Penjelasan

Jadi begini sobs kita tau bahwa suatu website itu mempunyai elemen-elemen, elemen elemen tersebut mempuyai identitas yang merujuk pada suatu lokasi, seperti misalkan elemen button untuk login, button tersebut mempunya ID : btn-login button tersebut ada didalam sebuah card nah maka fungsi locator ini untuk menemukan elemen yang ada dalam suatu website. tentunya bagi sobs-sobs web developer pasti sudah mengerahui konsep locator ini.

👉    Jenis Locator beserta contoh dengan python

- ID :  driver.find_element(By.ID, "btn-login")

- Class Name : driver.find_element(By.CLASS_NAME, "btn")

- XPath : driver.find_element(By.XPATH, "//button[@id='submit']")

-  CSS Selector : driver.find_element(By.CSS_SELECTOR, ".btn-primary")


3.6    Wait Mechanism (Explict & Implicit)

👉    Penjelasan

Terkadang selenium ini terlalu cepat sobs dalam mengirim perintah sebelum elemen muncul, artinya Wait Mechanism ini adalah mekanisme untuk mengunggu suatu elemen dalam website hingga siap digunakan.

👉    Implicit Wait

Menunggu semua elemen siap digunakan, berikut ini contohnya dengan python sobs

driver.implicitly_wait(10)  # Menunggu hingga 10 detik
artinya kita akan menunggu hingga maksimal 10 detik sampai semua elemen ready atau terender.

👉    Explicit Wait

Menunggu elemen tertentu sampai siap digunakan.


from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.ID, "btn-login")))

Dari contoh diatas gua menunggu maksimal 10 detik hingga elemen dengan id btn-login siap digunakan, artinya elemen yang lain akan diabaikan sobs.


3.7    Action dan Event Handling

👉    Penjelasan

Disini maksudnya selenium dapat menangani interkasi terhadap elemen-elemen yang ada sobs. seperti klik, input teks, scroll, drag & drop, atau pun pop up.

👉    Contoh dengan python

- Klik tombol : driver.find_element(By.ID, "submit").click()

- Input text : driver.find_element(By.NAME, "username").send_keys("sruputkode") 

 

3.8    Headless Mode (Jalankan Browser tanpa tampilan GUI)

👉    Penjelasan

Selenium ini bisa dijalankan tanpa tampilan gui sobs, artinya browser berjalan di latar belakang tanpa membuka jendela browser. semua operasi dilakukan tanpa adanya tampilan sobs. seperti click, input teks, dan lain-lain.

👉    Contoh dengan python


from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument("--headless")  # Mode tanpa tampilan

driver = webdriver.Chrome(options=options)
driver.get("https://www.sruputkode.com")


Contoh diatas akan menjalankan mode Headless mode dengan membuka alamat sruputkode.com sobs.

 

3.9    Screenshoot dan Logging

👉    Penjelasan

Selain menangani action dan event handling selenium juga bisa melakukan operasi screenshoot, dan juga logging (mencatat aktivitas) biasanya untuk debugging sobs-sobs.

👉    Contoh Screenshoot dengan python


driver.save_screenshot("screenshot.png")

selanjutnya :

👉    Contoh Logging dengan python


import logging

logging.basicConfig(level=logging.INFO)
logging.info("Starting automation...")


Kira-kira seperti itu sobs contohnya.


4.    Kesimpulan

Jadi dari pemaparan diatas kita bisa ambil kesimpulan sobs, bahwa selenium adalah tool untuk melakukan otomasi web, ada yang perlu kita perhatikan pada saat belajar selenium ini sobs seperti komponen-komponen yang sudah gua sebutkan diatas. 

jika sobs-sobs ingin belajar tentukan bahasa pemrograman apa yang ingin sobs-sobs gunakan, buat studi kasus untuk pembelajaran misalkan seperti login otomatis ke social media, mengambil data (scarping) atau lainnya tentukan studi kasusnya. dan jangan lupa untuk membaca dokumentasi resmi sebagai refrensi untuk kita belajar sobs.


Oke mungkin Sekian dulu materi yang gua tulis, jika materi kurang lengkap silahkan sobs-sobs mencari refrensi ditempat lain atau bertanya dikolom komentar.

Sekian & Terimakasih sobs-sobs.


See you next time.

Posting Komentar untuk "Pengen Belajar Otomasi Web? Yuk, Kenalan dengan Selenium"

www.domainesia.com
Web Hosting
www.domainesia.com