Playwright
Kumpulkan data dari situs dinamis dengan Playwright. Berlatih di toko simulasi yang berperilaku seperti aslinya. 14 modul masing-masing 10 menit, dengan soal yang mengecek jawabanmu di browser.
Dasar
- 1. Cara halaman dimuat; statis vs dinamis (kenapa requests tidak cukup)GratisApa yang sebenarnya terjadi saat halaman dimuat, kenapa sebagian data tidak pernah muncul di HTML mentah, dan apa yang dilakukan browser sungguhan secara berbeda.
- 2. Menyiapkan Playwright dan menjalankan browserGratisPasang Playwright dengan uv, jalankan browser dari Python, dan pahami tiga objek yang dipakai setiap script (browser, context, page) serta cara menutupnya dengan rapi.
- 3. Bernavigasi antarhalaman dan mengambil screenshotGratisPergi ke URL dan cek status response-nya, ikuti link, maju dan mundur, serta simpan screenshot halaman dan elemen untuk melihat apa yang dilihat scraper-mu.
- 4. Memilih elemen (selector, get_by_role / get_by_text)GratisTemukan tepat elemen yang kamu inginkan dengan CSS selector dan locator berorientasi pengguna milik Playwright, persempit dengan filter, dan pahami strict mode.
Menengah
- 5. Mengambil teks dan atributGratisBaca teks, atribut, dan data tersembunyi dari elemen, ubah nilai yang ditampilkan seperti "Rp 5.999.000" menjadi angka, dan bangun list record yang bersih dari elemen halaman yang berulang.
- 6. Menunggu elemen dan konten (auto-waiting)GratisPahami kenapa scraper membaca halaman terlalu cepat, bagaimana auto-waiting Playwright memperbaiki sebagian besar masalahnya, dan cara menunggu secara eksplisit, mengatur timeout, serta menangani konten yang tidak pernah datang.
- 7. Mengklik, mengetik, dan mengisi formulirGratisBerinteraksi dengan halaman seperti pengguna, mengisi dan men-submit formulir pencarian, mengklik tombol, menutup banner cookie yang menghalangi klik, dan mengecek apakah sebuah kontrol aktif.
- 8. Menangani pagination dan infinite scrollGratisKumpulkan setiap item dari daftar multi-halaman dengan mengikuti link Next, memakai pola URL dengan aman, mengklik Load more, dan menggulir feed tanpa akhir sampai selesai.
Lanjutan
- 9. Network interception: membaca API/JSON di latar belakangProAmati request yang dibuat sebuah halaman, tangkap JSON di balik konten dinamis dengan expect_response, panggil API itu secara langsung, dan blokir resource yang tidak kamu butuhkan dengan page.route.
- 10. Mode headless, user agent, dan penanganan anti-bot dasarProPelajari apa yang bisa diketahui server tentang browser-mu, kenapa lalu lintas otomatis diblokir, cara mengidentifikasi scraper-mu dengan jujur lewat user agent, dan kapan sebuah blokir berarti kamu harus berhenti.
- 11. Scraping di balik login (cookie, session)ProLogin dengan Playwright, pahami cookie session, simpan dan pakai ulang state yang sudah login, panggil API yang butuh autentikasi dengan requests, dan jauhkan kredensial dari kodemu.
- 12. Menyimpan data hasil scraping dengan rapi (CSV, JSON, DataFrame)ProUbah record hasil scraping menjadi DataFrame pandas yang bertipe, simpan sebagai CSV dan JSON, catat kapan data dikumpulkan, hapus duplikat antar-proses, dan bangun riwayat harga dari waktu ke waktu.
Ahli
- 13. Menyusun scraper yang bisa dipakai ulang (fungsi, config, retry)ProUbah sebuah script menjadi scraper yang mudah dirawat dengan objek config, peta selector, fungsi parsing kecil, class yang mengelola browser, retry dengan backoff untuk rate limit, dan logging.
- 14. Etika, rate limiting, dan robots.txtProPutuskan apakah kamu sebaiknya men-scrape sebuah situs, baca robots.txt dengan Python, batasi laju dan cache request-mu, serta tangani data pribadi secara bertanggung jawab.
Proyek jalur
- Proyek Scraping: pemantau harga Toko KitaProTiga tugas bernilai pada sebuah toko latihan. Kumpulkan seluruh katalog pesaing di beberapa halaman, cek stok di halaman detail tanpa melanggar aturan mereka, dan bandingkan harga mereka dengan hargamu lewat API JSON mereka, lalu simpan sebagai CSV.
Modul Pro terbuka dengan sekali bayar Rp 149.000, milikmu selamanya.