python -V
Karena python sudah terpasang, mari kita lanjut ke tahap berikutnya.
Instalasi Selenium
Seperti biasa, kita akan menginstalnya melalui
pip
. Jika pip
belum terpasang, lakukan pemasangan terlebih dahulu sebagai berikut.sudo apt-get install python-pip
Memasang selenium
.pip install selenium
Instalasi Webdriver
Jika pada tulisan yang lalu kita menggunakan chromedriver, kali ini kita akan menggunakan geckodriver (firefox driver) biar beragam 😀. Geckodriver dapat diunduh pada laman berikut ini https://github.com/mozilla/geckodriver/releases, silahkan pilih versi yang sesuai dengan peramban web kita.
Karena Saya menggunakan firefox quantum versi 57.0.1, maka Saya unduh geckodriver terbaru yakni versi 0.19.1.
Ekstrak hasil unduhan dan salin ke direktori
/usr/bin/
. Jangan lupa sesuaikan direktori unduhan geckodriver tersimpan, dibawah ini contoh geckodriver tersimpan pada direktori Downloads.sudo tar -zvxf ~/Downloads/geckodriver-v0.19.1-linux64.tar.gz -C /usr/bin/
Lakukan pengecekkan.ls /usr/bin/ | grep 'geckodriver'Hasilnya seperti berikut ini.
Tes Otomatisasi
Kita akan melakukan tes otomatisasi masuk ke akun Gmail. Ingat ini hanya untuk tujuan belajar saja.
Sekali lagi "for study purposes only".
Silahkan salin kode berikut ini.
#-*- coding: utf-8 -*- #!/usr/bin/python #------------------------------------------------ # mencoba otomatisasi login gmail # for study purposes only #------------------------------------------------ def loginGMail(): from selenium import webdriver # mengimpor selenium webdriver import time # mengimpor time (untuk jeda waktu) browser = webdriver.Firefox() # memanggil Firefox/ geckodriver alamatURL = 'https://mail.google.com/mail/' # alamat tujuan browser.get(alamatURL) # memanggil alamat tujuan browser.find_element_by_id("identifierId").send_keys("email") browser.find_element_by_id("identifierNext").click() # email GMail time.sleep(5) # memberi jeda 5 detik browser.find_element_by_id("password").send_keys("password") browser.find_element_by_id("passwordNext").click() # password email # memanggil fungsi loginGMail: loginGMail()Pehatikan, kode diatas menggunakan metode
find_element_by_id
, kita lihat terdapat empat id pada kode diatas antara lain:- identifierId
- identifierNext
- password
- passwordNext
Sekarang buka peramban web firefox dan masukan alamat https://mail.google.com, seperti biasa kita akan dibawa ke halaman login. Tempatkan kursor tepat pada kolom email, klik kanan pilih opsi
Inspect Element (Q)
. Agar lebih jelas, lihat gambar berikut ini.Nah, tiga id berikutnya pun sama, seperti itu cara mendapatkannya.
Next.. silahkan ganti baris kode berikut, isi dengan email yang akan kita coba:
browser.find_element_by_id("identifierId").send_keys("xxxxxx@gmail.com")masukkan juga password email-nya pada baris kode:
browser.find_element_by_id("password").send_keys("passwordRahasia")Simpan kode diatas ke direktori
$HOME
dengan nama loginMail.py
(sebagai contoh).Lakukan pengujian.
cd $HOME python loginMail.pyJika tutorial diatas diikuti dengan benar, maka hasilnya seperti dibawah ini, berhasil login 😎.
Sederhana dan mudah dimengerti bukan?
Demikianlah tes otomatisasi kali ini untuk keperluan belajar. Jangan pernah bosan untuk belajar dan berbagi.
Happy coding!
untuk download laporan (misalnya data excel) dari suatu web bisa pake cara ini mas?
ReplyDeleteBisa sekali, tinggal disesuaikan saja elementnya.
DeleteMengambil cokie bisa ga bang
ReplyDelete