Mengupas Tuntas Web Scraping: Panduan Lengkap Uji Kompetensi Informatika Kelas 10
Dalam era digital yang serba terhubung, kemampuan untuk mengumpulkan dan menganalisis data dari berbagai sumber menjadi keterampilan yang sangat berharga. Buku Informatika Kelas 10 Kurikulum Merdeka menghadirkan topik menarik mengenai web scraping, sebuah teknik yang memungkinkan kita untuk secara otomatis mengambil informasi dari situs web. Bagian Uji Kompetensi pada halaman 133 memberikan kesempatan bagi para siswa untuk menguji pemahaman mereka tentang konsep dan implementasi web scraping, khususnya dalam konteks analisis data lowongan pekerjaan.
Artikel ini akan mengulas secara mendalam keempat soal Uji Kompetensi tersebut, memberikan penjelasan yang komprehensif dan mudah dipahami, serta menyajikan solusi yang dapat menjadi referensi belajar bagi siswa.
Memahami Inti Web Scraping
Web scraping adalah proses otomatis untuk mengekstrak data dari situs web. Data yang diekstraksi ini kemudian dapat disimpan, dianalisis, atau digunakan untuk berbagai keperluan. Dalam konteks Uji Kompetensi ini, fokusnya adalah pada pengambilan data lowongan pekerjaan dari internet.
Mari kita bedah satu per satu soal yang disajikan dalam Uji Kompetensi:
Soal 1: Menjelaskan Langkah-Langkah Koleksi Data (Scraping)
Pertanyaan ini meminta siswa untuk menjelaskan proses web scraping menggunakan bahasa mereka sendiri. Inti dari proses ini adalah bagaimana data diambil dari sebuah situs web secara sistematis.
Langkah-langkah umum dalam melakukan web scraping dapat diuraikan sebagai berikut:
- Penentuan Sumber Data: Langkah pertama adalah mengidentifikasi situs web yang menjadi target pengambilan data. Contohnya adalah situs web yang menyediakan daftar lowongan pekerjaan.
- Analisis Struktur HTML: Setiap halaman web dibangun menggunakan kode HTML. Memahami struktur HTML situs target sangat krusial agar kita tahu di mana letak informasi yang ingin diambil. Ini seperti membaca peta untuk menemukan harta karun.
- Penggunaan Alat (Library/Framework): Untuk mengotomatisasi proses ini, biasanya digunakan library atau framework pemrograman khusus. Contoh populer di Python adalah BeautifulSoup atau Scrapy. Alat ini membantu dalam mengunduh konten halaman web dan memproses kode HTML-nya.
- Identifikasi Elemen Data: Setelah struktur HTML dipahami, langkah selanjutnya adalah mengidentifikasi elemen-elemen spesifik yang berisi data yang diinginkan. Ini bisa berupa judul lowongan, nama perusahaan, deskripsi pekerjaan, gaji, lokasi, dan lain sebagainya. Setiap elemen ini biasanya memiliki tag HTML tertentu (misalnya,
<h1>untuk judul,<p>untuk paragraf) dan terkadang atribut tambahan seperticlassatauidyang mempermudah identifikasi. - Penulisan Kode Scraping: Berdasarkan identifikasi elemen, kode script pemrograman ditulis. Kode ini akan memerintahkan alat scraping untuk mencari elemen-elemen tersebut di halaman web dan mengekstrak isinya.
- Eksekusi Skrip: Setelah kode ditulis, skrip dijalankan. Skrip akan mengunjungi situs web, membaca kode HTML-nya, mencari elemen yang telah ditentukan, dan mengambil datanya.
- Penyimpanan Data: Data yang berhasil diekstrak kemudian disimpan dalam format yang mudah digunakan, seperti file CSV (Comma Separated Values), Excel, atau langsung dimasukkan ke dalam sebuah database.
Soal 2: Menyesuaikan Target Pencarian
Proyek web scraping sebelumnya dalam buku siswa mungkin telah mencontohkan pencarian lowongan pekerjaan “part-time”. Soal ini menanyakan bagaimana cara mengubah script agar dapat mencari jenis lowongan pekerjaan lain, misalnya “programmer”.
Perubahan utama untuk memodifikasi target pencarian terletak pada parameter URL (alamat web) yang digunakan sebagai sumber data. Umumnya, situs web lowongan pekerjaan memungkinkan pengguna untuk memasukkan kata kunci pencarian dalam kolom pencarian. Kata kunci ini kemudian akan dimasukkan ke dalam URL situs web tersebut untuk memfilter hasil.
Misalnya, jika URL asli untuk mencari lowongan “part-time” adalah:
https://www.jobs.id/lowongan-kerja?kata-kunci=part-time
Maka, untuk mencari lowongan pekerjaan “programmer”, URL tersebut perlu diubah dengan mengganti part-time menjadi programmer:
https://www.jobs.id/lowongan-kerja?kata-kunci=programmer
Perubahan ini dilakukan pada baris kode script yang mendefinisikan alamat sumber data, memastikan bahwa script akan mengambil informasi yang relevan dengan kata kunci yang baru.
Soal 3: Menambah Informasi Lokasi dan Analisis Struktur HTML
Soal ini memiliki dua bagian penting: menambahkan informasi lokasi ke dalam tabel hasil scraping dan menganalisis struktur HTML untuk menemukan data lokasi.
Menambah Kolom Lokasi ke Tabel
Untuk menambahkan informasi lokasi ke dalam tabel hasil scraping yang sebelumnya hanya menampilkan posisi, instansi, dan gaji, kita perlu melakukan beberapa langkah:
- Identifikasi Struktur HTML Lokasi: Langkah krusial pertama adalah menganalisis struktur HTML halaman web lowongan pekerjaan untuk menemukan di mana informasi lokasi disimpan.
- Deklarasi Array/Variabel Baru: Sama seperti informasi posisi, instansi, dan gaji, kita perlu mendeklarasikan sebuah array atau variabel terpisah untuk menampung data lokasi yang akan diekstrak.
- Ekstraksi Data Lokasi: Dalam kode scraping, setelah mengidentifikasi elemen HTML yang berisi data lokasi (seringkali ditandai dengan atribut
class="location"atau serupa), data tersebut diekstrak dan dimasukkan ke dalam array lokasi yang telah dideklarasikan. - Integrasi ke Tabel: Terakhir, array lokasi yang telah terisi data kemudian diintegrasikan ke dalam struktur tabel data, sehingga informasi lokasi muncul sebagai kolom baru bersama dengan informasi lainnya.
Analisis Struktur HTML untuk Lokasi
Analisis struktur HTML adalah kunci untuk menemukan data lokasi. Setelah proses parsing (membaca dan menguraikan kode HTML) pada halaman web lowongan pekerjaan, kita akan mendapatkan representasi kode yang terstruktur.
Misalkan, setelah melakukan parsing, kita menemukan bahwa informasi lokasi sebuah lowongan pekerjaan berada dalam struktur HTML yang mirip dengan ini:
<div class="job-details">
<span class="position">Software Engineer</span>
<span class="company">Tech Solutions Inc.</span>
<span class="salary">Rp 10.000.000</span>
<span class="location">Jakarta, Indonesia</span>
</div>
Dalam contoh di atas:
* Informasi lokasi berada dalam tag <span class="location">.
* Tag <span class="location"> ini berada dalam hierarki yang sama dengan tag yang berisi informasi instansi (<span class="company">).
* Atribut class="location" sangat membantu karena memberikan penanda unik untuk elemen yang berisi data lokasi, memudahkan script scraping untuk menemukannya.
Dengan mengidentifikasi pola seperti ini, kita dapat menulis kode untuk mengekstrak teks di dalam tag <span class="location"> tersebut.
Setelah data lokasi berhasil diekstrak dan disimpan dalam sebuah array, data tersebut kemudian dapat ditampilkan dalam tabel hasil scraping sebagai kolom tambahan.
Soal 4: Pencarian Lowongan Pekerjaan Manual (Unplugged) dan Otomatis (Plugged)
Soal terakhir ini mengajak siswa untuk membandingkan metode pencarian dan perangkuman lowongan pekerjaan secara manual (unplugged) dan otomatis (plugged).
Metode Manual (Unplugged)
Metode ini melibatkan pencarian informasi lowongan pekerjaan tanpa bantuan komputer secara langsung, misalnya dari koran atau majalah.
- Proses:
- Siswa akan membaca koran atau majalah untuk menemukan iklan lowongan pekerjaan.
- Informasi penting seperti posisi, instansi, gaji, dan lokasi akan dicatat secara manual.
- Pencatatan ini dapat dilakukan dengan menulis tangan di selembar kertas dalam format tabel yang telah ditentukan.
- Keterbatasan: Proses ini memakan waktu, rentan terhadap kesalahan penulisan, dan data yang diperoleh terbatas pada apa yang dipublikasikan di media cetak pada waktu tertentu.
Metode Otomatis (Plugged)
Metode ini menggunakan bantuan komputer, seperti web scraping, untuk mengumpulkan data dari situs web.
- Proses:
- Siswa dapat menggunakan script web scraping untuk mengunduh data lowongan pekerjaan dari situs web seperti JobsDB (https://id.jobsdb.com/id).
- Struktur HTML situs JobsDB yang relatif sederhana memudahkan proses analisis dan ekstraksi data.
- Data yang berhasil di-scrape kemudian dirangkum ke dalam format tabel, baik menggunakan aplikasi pengolah angka (seperti Microsoft Excel atau Google Sheets) atau langsung dari hasil script yang menyimpannya dalam format tabel.
- Keunggulan: Proses ini jauh lebih cepat, efisien, dan dapat mengumpulkan volume data yang sangat besar. Data yang diperoleh juga lebih akurat dan konsisten.
Dengan membandingkan kedua metode ini, siswa dapat mengapresiasi kekuatan otomatisasi dalam pengumpulan dan analisis data di era digital. Web scraping membuka pintu untuk pemahaman yang lebih dalam terhadap tren pasar kerja dan berbagai informasi lainnya yang tersedia secara daring.







