Web crawler atau yang dikenal juga dengan istilah web spider bertugas untuk mengumpulkan semua informasi yang ada di dalam halaman web. Web crawler bekerja secara otomatis dengan cara memberikan sejumlah alamat website untuk dikunjungi serta menyimpan semua informasi yang terkandung didalamnya. Setiap kali web crawler mengunjungi sebuah website, maka dia akan mendata semua link yang ada dihalaman yang dikunjunginya itu untuk kemudian dikunjungi lagi satu persatu.
Kita analogikan dunia World Wide Web sebagai rute busway di Ibukota Jakarta. Setiap halte busway dapat dianggap sebagai dokumen (bisa berupa halaman web, gambar, video, PDF, atau file yang lain). Search engine ingin mengakses semua halte busway yang ada di Ibukota Jakarta, jalur terbaik adalah melalui jalur busway yang menghubungi halte yang satu dengan yang lain, jalur busway ini adalah link antara halaman web.
Melalui link, search engine mengirim robot yang disebut crawlers atau spiders yang dapat mencari dan mencatat milyaran link-link dokumen yang lain di web.
Ketika crawlers menemukan halaman web, tugas selanjutnya adalah mengambil data-data dari halaman web dan menyimpannya ke dalam hardisk, yang dimana nanti dapat diakses pada saat dilakukan query yang berhubungan dengan data tersebut. Untuk mencapai tujuan mengumpulkan milyaran halaman web dan menyajikannya dalam hitungan detik, search engine membutuhkan data center yang sangat besar dan canggih untuk mengelola semua data ini.
Proses web crawler dalam mengunjungi setiap dokumen web disebut dengan web crawling atau spidering. Proses crawling dalam suatu website dimulai dari mendata seluruh url dari website, menelusurinya satu-persatu, kemudian memasukkannya dalam daftar halaman pada indeks search engine, sehingga setiap kali ada perubahan pada website, akan terupdate secara otomatis.
Web crawling adalah proses mengambil kumpulan halaman dari sebuah web untuk dilakukan pengindeksan sehingga mendukung kinerja mesin pencari. Tujuan dari proses crawling adalah mempercepat dan mengefisienkan kumpulan halaman web dengan cepat, mengumpulkan struktur link yang menghubungkan kumpulan halaman web tersebut (Manning et al. 2008).
Salah satu contoh situs yang menerapkan web crawling adalah www.webcrawler.com . Di samping situs-situ mesin pencari terkemuka tentunya, seperti Google, Yahoo, Ask, Live, dan lain sebagainya
Web crawler biasa digunakan untuk membuat salinan secara sebagian atau keseluruhan halaman web yang telah dikunjunginya agar dapat diproses lebih lanjut oleh system pengindexan. Crawler dapat juga digunakan untuk proses pemeliharaan sebuah website, seperti memvalidasi kode html sebuah web, dan crawler juga digunakan untuk memperoleh data yang khusus seperti mengumpulkan alamat e-mail.
Web crawler termasuk kedalam bagian software agent atau yang lebih dikenal dengan istilah program bot. Secara umum crawler memulai prosesnya dengan memberikan daftar sejumlah alamat website untuk dikunjungi, disebut sebagai seeds. Setiap kali sebuah halaman web dikunjungi, crawler akan mencari alamat yang lain yang terdapat didalamnya dan menambahkan kedalam daftar seeds sebelumnya.
Dalam melakukan prosesnya, web crawler juga mempunyai beberapa persoalan yang harus mampu diatasinya. Permasalahan tersebut mencakup :
- Halaman mana yang harus dikunjungi terlebih dahulu.
- Aturan dalam proses mengunjungi kembali sebuah halaman.
- Performansi, mencakup banyaknya halaman yang harus dikunjungi.
- Aturan dalam setiap kunjungan agar server yang dikunjungi tidak kelebihan beban.
- Kegagalan, mencakup tidak tersedianya halaman yang dikunjungi, server down, timeout, maupun jebakan yang sengaja dibuat oleh webmaster.
- Seberapa jauh kedalaman sebuah website yang akan dikunjungi.
- Hal yang tak kalah pentingnya adalah kemampuan web crawler untuk mengikuti
- perkembangan teknologi web, dimana setiap kali teknologi baru muncul, web crawler harus dapat menyesuaikan diri agar dapat mengunjungi halaman web yang menggunakan teknologi baru tersebut.
Fitur crawler harus memberikan
- Ketahanan (Robustness) : Web berisi server yang membuat perangkap spider, yang merupakan generator dari halaman web yang menyesatkan crawler pada jebakan mengambil jumlah halaman tak terbatas dalam sebuah domain tertentu. Crawler harus dirancang untuk tahan terhadap perangkap tersebut.
- Kesopanan (Politeness) : Web server memiliki kebijakan implisit dan eksplisit yang mengatur tingkat crawler dapat mengunjungi mereka. Kebijakan ini harus dihormati.
Fitur crawler harus menyediakan
- Distributed: crawler harus memiliki kemampuan untuk mengeksekusi dalam mode didistribusikan ke beberapa mesin.
- Scalable: Arsitektur crawler harus mengizinkan peningkatan skala crawl dengan menambahkan mesin ekstra dan bandwidth.
- Kinerja dan efisiensi: Sistem crawl harus memanfaatkan sumber daya yang efisien pada berbagai sistem termasuk prosesor, penyimpanan dan bandwidth jaringan.
- Kualitas: crawler harus bisa mengambil hal yang “berguna” untuk kebutuhan pengguna pada halaman pertama.
- Kesegaran (Fresness) : Agar terlihat melakukan crawling secara terus menerus, crawler harus dapat menelusuri halaman dengan frekuensi yang mendekati tingkat perubahan dari halaman itu.
- Extensible: Crawler harus dirancang untuk diperluas dalam banyak cara – untuk mengatasi dengan format data baru, mengambil protocol baru, dan sebagainya. Ini menuntut arsitektur crawler menjadi modular
Arsitektur crawler
- Skema sederhana untuk crawling menuntut beberapa modul yang sesuai.
- Perbatasan URL, yang mengandung URL masih harus diambil saat crawl berikutnya (dalam kasus crawling berkelanjutan, URL mungkin telah diambil sebelumnya namun kembali ke perbatasan untuk kembali diambil).
- Sebuah resolusi DNS modul yang menentukan server web dari mana untuk mengambil halaman yang ditentukan oleh URL.
- Pengambilan modul yang menggunakan protokol http untuk mengambil halaman web pada URL.
- Sebuah modul parsing yang mengekstrak teks dan set halaman dari sebuah link web.
- Sebuah modul eliminasi duplikat yang menentukan apakah link diekstraksi sudah di perbatasan URL atau baru diambil.
Layanan Solo Desain :
Jasa Toko Online – Jasa Web Desain – Jasa Optimasi Website – Jasa Media Social Marketing – Jasa Internet Marketing – Jasa Optimasi Toko Online – Kursus Web Desain – Kursus Toko Online – Kursus Socialmedia Marketing – Jasa Toko Online Murah – Jasa Desain Web Solo – Jasa desain Grafis – Jasa SEO – Jasa Pembuatan Web Pemerintah – Jasa Pembuatan Web Sekolah – Jasa Pembuatan Web Perusahaan – Jasa Optimasi Social Media