0% found this document useful (0 votes)
93 views9 pages

Aplikasi Web Crawler Untuk Web Content Pada Mobile

This document discusses the development of a web crawler application for mobile devices. It begins with background on trends in mobile internet usage and the growth of mobile search services. This leads to an increased need for web crawlers that can access mobile-optimized web pages. The document then describes the functions of a web crawler application and server for mobile devices. It would collect mobile web pages and provide search results to a mobile search application. Identification of mobile content is also discussed, focusing on techniques like analyzing doctype tags and HTTP headers to determine the content type and format of web pages.

Uploaded by

Yulia Rakhfah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
93 views9 pages

Aplikasi Web Crawler Untuk Web Content Pada Mobile

This document discusses the development of a web crawler application for mobile devices. It begins with background on trends in mobile internet usage and the growth of mobile search services. This leads to an increased need for web crawlers that can access mobile-optimized web pages. The document then describes the functions of a web crawler application and server for mobile devices. It would collect mobile web pages and provide search results to a mobile search application. Identification of mobile content is also discussed, focusing on techniques like analyzing doctype tags and HTTP headers to determine the content type and format of web pages.

Uploaded by

Yulia Rakhfah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/274719247

APLIKASI WEB CRAWLER UNTUK WEB CONTENT PADA MOBILE PHONE

Article · July 2009


DOI: 10.12962/j24068535.v7i3.a79

CITATION READS
1 1,622

3 authors, including:

Ahmad Hoirul Basori


King Abdulaziz University
89 PUBLICATIONS   269 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Post Stroke Rehabilitation View project

Crowd and Robotics Behaviour View project

All content following this page was uploaded by Ahmad Hoirul Basori on 13 May 2016.

The user has requested enhancement of the downloaded file.


Sarwosri, Aplikasi Web Crawler untuk Web Content pada Mobile Phone

APLIKASI WEB CRAWLER UNTUK WEB CONTENT PADA


MOBILE PHONE
Sarwosri1 Ahmad Hoirul Basori1 Wahyu Budi Surastyo1
1
Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember
Email: sri@its-sby.edu, hoirul@its-sby.edu

ABSTRACT
Crawling is the process behind a search engine, which served through the World Wide Web in a structured and with certain
ethics. Applications that run the crawling process is called Web Crawler, also called web spider or web robot. The growth
of mobile search services provider, followed by growth of a web crawler that can browse web pages in mobile content type.
Crawler Web applications can be accessed by mobile devices and only web pages that type Mobile Content to be explored
is the Web Crawler.
Web Crawler duty is to collect a number of Mobile Content. A mobile application functions as a search application that
will use the results from the Web Crawler. Crawler Web server consists of the Servlet, Mobile Content Filter and datastore.
Servlet is a gateway connection between the client with the server. Datastore is the storage media crawling results. Mobile
Content Filter selects a web page, only the appropriate web pages for mobile devices or with mobile content that will be
forwarded.
Keywords: search engine, web crawler, mobile device, mobile content, servlet

ABSTRAK
Crawling adalah proses di belakang sebuah search engine, yang bertugas menelusuri World Wide Web secara terstruktur
dengan etika-etika tertentu. Aplikasi yang menjalankan proses crawling disebut Web Crawler, atau disebut web spider
atau web robot. Tumbuhnya penyedia jasa pencarian mobile, menyebabkan tumbuhnya kebutuhan akan web crawler yang
dapat menelusuri halaman-halaman web yang bertipe mobile content. Aplikasi Web Crawler dapat diakses oleh peralatan
mobile dan hanya halaman-halaman web yang bertipe Mobile Content yang akan ditelusuri Web Crawler ini.
Web Crawler bertugas untuk mengumpulkan sejumlah Mobile Content. Sebuah aplikasi mobile berfungsi sebagai aplikasi
pencarian yang akan memanfaatkan hasil dari Web Crawler. Server Web Crawler terdiri dari Servlet, Mobile Content
Filter dan Datastore. Servlet merupakan portal koneksi antara client dengan server. Datastore merupakan media-media
penyimpanan hasil crawling. Mobile Content Filter menyeleksi suatu web page, hanya web page yang sesuai untuk
peralatan mobile atau berisi mobile content yang akan diteruskan.
Kata Kunci: search engine, web crawler, mobile device, mobile content, servlet

Tren yang muncul saat ini, pengguna internet lebih se- nya penyedia jasa pencarian mobile, menyebabkan tum-
ring mengakses internet dari search engine daripada lang- buhnya kebutuhan akan web crawler yang dapat menelusuri
sung ke portal tertentu. Tren ini bukan hanya terjadi pada halaman-halaman web yang bertipe mobile content. Mo-
pengguna internet dari PC tetapi juga terjadi pada peng- bile Content adalah halaman-halaman web yang dapat di-
guna Mobile internet [1]. Jika sebelumnya pengguna lebih tampilkan oleh peralatan Mobile.
banyak mengakses ke suatu portal, seperti Yahoo, sekarang
pengguna lebih memilih menggunakan search engine un- WEB CRAWLER
tuk mengakses web secara lebih luas. Hal tersebut menye-
babkan pencarian secara Mobile mendominasi akses infor- Definisi Web Crawler
masi bagi penggunanya, seperti halnya pada World Wide Web Crawler adalah sebuah program yang melintasi
Web. Dan tentu saja terjadi perkembangan signifikan ak- struktur hypertext dari web, dimulai dari sebuah alamat
tifitas industri search engine untuk peralatan Mobile dari awal (yang disebut seed) dan secara sekursif mengunjungi
penyedia jasa search engine yang sudah terkenal. Google alamat web di dalam halaman web. Web Crawler juga
dan Yahoo telah merilis sejumlah solusi pencarian Mobile dikenal sebagai web robot, spider, worm, walker dan wan-
termasuk pencarian secara lokal dan pencarian melalui SMS. derer. Semua search engine besar menggunakan crawler
Selain mereka, mulai bermunculan penyedia jasa baru yang yang mampu melintasi internet secara terus-menerus, un-
menyediakan jasa pencarian secara Mobile, seperti Mooobl, tuk menemukan dan mengambil halaman web sebanyak
4info, UpSnap, dan Technorati Mobile. mungkin. Selain untuk search engine, web crawler juga
Crawling adalah proses di belakang sebuah search en- digunakan untuk beberapa penelusuran khusus, seperti im-
gine, yang bertugas menelusuri World Wide Web secara ter- plementasi penelusuran alamat email. Hal tersebut meng-
struktur dengan etika-etika tertentu. Aplikasi yang men- akibatkan jumlah dan variasi dari web crawler juga se-
jalankan proses crawling disebut Web Crawler, atau dise- makin banyak.
but juga web spider atau web robot. Web crawler bertugas Usia teknologi Web Crawler bisa dikatakan hampir se-
menelusuri setiap link pada halaman Web di internet dan umur dengan web [3]. Aplikasi crawler pertama adalah
menyimpannya untuk digunakan lebih lanjut [2]. Tumbuh- World Wide Web Wanderer. Crawler tersebut merupakan

127
Volume 7, Nomor 3, Januari 2009 : 127–134

User-agent: * <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile


Disallow: /cgi-bin/ 1.0 //EN" "http://www.wapforum.org/DTD/
Disallow: /tmp/ xhtml-mobile10.dtd">
Disallow: /~joe/

Gambar 3: DocType untuk XHTML-MP


Gambar 1: Format file robots.txt untuk sebuah web server
<!DOCTYPE html PUBLIC"-//WAPFORUM//DTD WML 2.0//EN"
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" "http://www.wapforum.org/DTD/wml20.dtd">
"http://www.wapforum.org/DTD/wml13.dtd">

Gambar 4: DocType untuk WML 2.x


Gambar 2: DocType untuk WML 1.x
<!DOCTYPE HTML PUBLIC "-//W3C//DTD Compact HTML 1.0
Draft//EN">
kreasi dari Matthew Gray, mahasiswa jurusan Fisika dari
Massachusetts Institute of Technology (MIT). World Wide
Web Wanderer diciptakan untuk menelusuri pertumbuhan Gambar 5: DocType untuk C-HTML
dari World Wide Web yang baru saja lahir. Perkembangan
crawler kemudian diikuti dengan proyek Stanford Google, <meta name="CHTML" content="yes">
yang menjadi cikal bakal lahirnya search engine Google
[1].
Gambar 6: Tag Meta untuk C-HTML
Etika Web Crawler
<meta http-equiv="Content-Type" content="application/
Proses crawling secara terus-menerus dapat menyebab- vnd.wap.xhtml+xml">
kan beban berlebih pada server suatu web, bukan hanya
dari proses penelusuran link tapi juga dari proses pengun-
duhan halaman web yang bisa berjumlah ratusan. Selain Gambar 7: Tag Meta untuk XHTML-MP
itu pada beberapa web terdapat bagian web yang diharap
tidak dimasuki proses crawling. Untuk mengatasi masalah-
masalah tersebut, dibuatlah suatu protokol yang disebut IDENTIFIKASI MOBILE CONTENT
Robot Exclusion Protocol [4]. Protokol pertama kali dia- Pendeteksian mobile content dilakukan dalam beberapa
jukan oleh anggota mailing list robot di tahun 1994 dan ke- langkah yang diawali dengan menggunakan DOCTYPE
mudian menjadi Internet Draft di tahun 1997. Protokol ini yang membedakan DTD pada beberapa document XML.
sampai saat ini tidak memiliki standar resmi untuk struk- DOCTYPE dari masing-masing format mobile content di-
turnya, sehingga protokol ini menjadi semacam aturan ti- tunjukkan pada Gambar 2 - Gambar 7. Langkah kedua di-
dak tertulis untuk proses crawling. lakukan dengan membaca HTTP CONTENT-TYPE pada
Robot Exclusion Protocol berbentuk file teks yang ber- header respon yang dapat digunakan untuk mengenali tipe
format robots.txt, yang berisi mekanisme dari suatu web data yang diinginkan. Tipe data yang akan didapat pada
server. Dalam file tersebut dispesifikasikan bagian mana masing-masing format adalah
dari suatu web server yang dapat dan yang tidak dapat - WML untuk "text/vnd.wap.wml",
ditelusuri. Selain itu dalam file itu dapat dispesifikasikan - XHTML-MP untuk "application/vnd.wap.xhtml+xml",
web crawler apa yang dapat menelusuri web server terse- - dan C-HTML untuk "text/html".
but. Contoh format suatu file robots.txt untuk sebuah web Karena tipe data untuk C-HTML sama dengan HTML pada
server ditunjukkan pada Gambar 1. umumnya, maka cara ini hanya digunakan untuk menge-
nali WML dan XHTML-MP. Untuk mobile content jenis
Algoritma Web Crawler C-HTML dan XHTML-MP dapat juga dideteksi dari tag
Konsep dari algoritma Breadth-First Crawler yang di- meta. Sintaks untuk format C-HTML dan XHTML-MP
pakai dalam proses crawling di makalah ini mengecek se- dapat dilihat pada Gambar 6 dan Gambar 7.
tiap link dalam suatu halaman web sebelum berpindah ke
halaman lain [5]. Breadth-First Crawler akan menelusuri J2ME: Java 2 Micro Edition
setiap link pada halaman pertama, lalu menelusuri setiap
Java ME adalah lingkungan pengembangan yang dide-
link pada halaman dari link pertama di halaman pertama,
sain untuk menggunakan aplikasi Java pada peralatan elek-
dan seterusnya. Penelusuran dilakukan sampai tidak ada
tronik kecil, seperti telepon seluler, PDA, dan sejenisnya.
lagi link baru yang dapat ditelusuri atau jika jumlah hala-
Untuk mengatasi keterbatasan yang berhubungan dengan
man yang ditelusuri sudah mencapai batas maksimal yang
pembuatan aplikasi pada peralatan elektronik kecil tekno-
ditentukan. Algoritma Depth-First Crawler memiliki ke-
logi Java ME disesuaikan dengan keterbatasan memori,
balikan proses dari Breadth-First Crawler. Depth-First
tampilan dan tenaga [6]. Gambar 8 menunjukkan gam-
Crawler menelusuri semua kemungkinan jalur dari suatu
baran tentang platform Java. J2ME Device memiliki fitur-
link sampai mencapai suatu dasar sebelum melanjutkan
fitur yang berbeda. J2ME Configuration ini dirancang un-
penelusuran ke link berikutnya.
tuk menyediakan library standar yang mengimplementasi-
kan fitur standar dari sebuah Handled Device.

128
Sarwosri, Aplikasi Web Crawler untuk Web Content pada Mobile Phone

Gambar 8: Perbandingan Java ME dengan teknologi Java lainnya

Analisa Sistem
Tabel 1: Perbandingan CLDC dan CDC
Sistem Client
CLDC CDC Berikut adalah fitur-fitur fungsi yang disediakan oleh sis-
Mengimplementasikan Mengimplementasikan tem di sisi client.
subset dari J2SE seluruh fitur dari J2SE 1) melakukan crawling ke server dari file XML.
2) mengubah alamat server yang digunakan.
JVM yang digunakan JVM yang digunakan 3) melihat daftar crawling yang telah dilakukan.
lebih dikenal lebih dikenal 4) melihat halaman web hasil crawling dalam browser.
dengan KVM dengan CVM 5) mendaftarkan client dengan unique id.
Digunakan pada perangkat Digunakan pada perangkat
6) meminta server untuk memulai proses crawling.
handled dengan handled dengan 7) mengecek status proses crawling.
ukuran memori ukuran memori 8) meminta hasil proses crawing.
terbatas (160-512 Kbytes) minimal 2 Mbytes 9) meminta halaman web dari suatu URL hasil crawling.
Sistem Server
Prosesor: 16 Bit Prosesor: 32 Bit Berikut adalah fitur-fitur fungsi yang disediakan oleh sis-
atau 32 Bit tem di sisi server. Server dapat melakukan crawling dari
file XML, jika timestamp file XML kurang dari 6 jam.
Server juga dapat melakukan crawling dari database, jika
timestamp file XML lebih atau sama dengan 6 jam. Selain
Ada dua macam kategori J2ME saat ini diantaranya itu server masih tetap dapat melakukan crawling secara on-
adalah CLDC (Connected Limited Device Configuration) line jika tidak ditemukan data crawling di file XML dan
dan CDC (Connected Device Configuration). CLDC umum- di database. Terkait dengan hasil crawling, server dapat
nya digunakan untuk aplikasi Java pada ponsel semacam menyimpan hasil tersebut ke file XML maupun ke database.
Nokia, Siemens, PDA, Palm, PocketPC dan two way pagers Pada Gambar 9 ditunjukkan diagram use case untuk
dengan memori standar 160-512 Kbytes. Sedangkan CDC client, sedangkan pada Gambar 10 diberikan diagram use
umumnya digunakan untuk aplikasi Java pada perangkat case untuk server.
Handled Device dengan ukuran memori paling tidak 2 MB.
Perbandingan keduanya bisa dilihat pada Tabel 1.
Perancangan
Pada bagian perancangan data diberikan dua gambaran
METODOLOGI pemodelan. Rancangan pertama adalah rancangan model
Pada penelitian ini dibangun suatu server Web Crawler data konseptual (Conceptual Data Model, CDM). Sedan-
yang mengumpulkan sejumlah mobile content web. Selain gkan rancangan yang kedua adalah rancangan model data
itu implementasi aplikasi mobile sebagai aplikasi pencari- fisik (Physical Data Model, PDM). Pada Gambar 11 ditun-
an yang akan memanfaatkan indeks hasil dari Web Crawler jukkan rancangan data fisik PDM yang akan menjadi tabel
juga dilakukan. Tahapan yang dikerjakan pada penelitian di database.
ini meliputi analisa sistem, perancangan dan implementasi. Perangkat lunak untuk integrasi kebutuhan non fung-
Sistem dibedakan menjadi sistem pada client dan server. sional pada diagram use case dan skenario ini menggu-

129
Volume 7, Nomor 3, Januari 2009 : 127–134

Gambar 9: Diagram use case Client

Gambar 10: Diagram use case Server

nakan konsep hirarki. Jadi keseluruhan aplikasi pada form-


form yang ada akan menjadi satu kesatuan dalam form Tabel 2: Lingkungan implementasi
utama. Struktur menu yang muncul pada form utama di- Perangkat Keras Tipe handphone:
tunjukkan pada Gambar 12. Sony Ericsson W830
Support: GPRS
Implementasi Perangkat Lunak Sistem Operasi:
Untuk lingkungan implementasi membutuhkan spesi- Windows XP (Server)
fikasi perangkat keras dan perangkat lunak. Detil infor- Compiler dan Tools:
masi tentang spesifikasi dalam pembangunan aplikasi In- J2EE 1.4 (Server),
WTK 2.5.1 (Client),
stant Message pada handphone dengan teknologi GPRS Netbeans 5.5.1
dan bluetooth ditunjukkan dalam Tabel 2.
Library: J2ME-Polish
Proses yang telah dirancang menjadi suatu class dia-
gram akan diimplementasikan menjadi kelas midlet pada
Java ME untuk client dan menjadi servlet pada J2EE un-
tuk server. Implementasi proses dari kelas Crawler Client Rancangan antar-muka yang telah dibuat sebelumnya
ditunjukkan pada Gambar 13. akan diimplementasikan pada mobile phone. Di dalam an-

130
Sarwosri, Aplikasi Web Crawler untuk Web Content pada Mobile Phone

Gambar 11: PDM

Gambar 12: Struktur Menu

tarmuka ini terbagi menjadi beberapa halaman, yaitu menu Pada Gambar 16 pertama-tama pengguna memilih me-
utama, inputform, process, hasil crawling, history, setting- nu [New Crawling]. Kemudian pengguna akan memasuk-
form, dan about. Implementasi antarmuka ditunjukkan pada kan seed_url dan maksimum crawling seperti pada Gam-
Gambar 14. bar 16. Lalu pengguna mengirim request tersebut dengan
memilih [Menu > Send] seperti pada Gambar 17. Setelah
UJI COBA itu akan tampil pilihan untuk melakukan online crawling
atau offline crawling seperti pada Gambar 18. Pengguna
Parameter keberhasilan uji coba adalah semua fungsi memilih [Ok]. Kemudian proses crawling akan berjalan
use case pada sisi client dan sisi server bisa dilakukan. dan akan muncul tampilan progress dari proses seperti pada
Gambar 19. Angka di samping progress itu adalah jumlah
Uji Coba Online Crawling URL yang sudah diproses. Setelah proses crawling sele-
Pada uji coba ini dilakukan dengan cara pengguna hand- sai akan muncul daftar URL hasil crawling seperti pada
phone memasukkan seed_url dan maksimum crawling lalu Gambar 20. Setelah itu pengguna dapat memilih salah satu
memilih online crawling. Adapun langkah-langkah terlihat URL untuk ditampilkan pada browser.
pada Gambar 15 - Gambar 20.

131
Volume 7, Nomor 3, Januari 2009 : 127–134

public class CrawlerClient extends MIDlet implements CommandListener, Runnable {


public void displayHasil() {
String url = hasilList.getString(hasilList.getSelectedIndex());
Save saveId = new Save("id.db");
saveId.open();
String mobileId = saveId.readRecord(1);
try {
HttpConnection con = ConnectionUtil.connect(SettingForm.getServerUrl());
String input = "@sendHtml "+url;
ConnectionUtil.sendInput(con,mobileId,input);
String html = ConnectionUtil.getData(con);
browser.loadPage(html);
display.setCurrent(browser);
} catch (IOException ex) {
ex.printStackTrace();
}
}
}

Gambar 13: Kelas Crawler Client.

Gambar 14: Halaman Menu Utama Gambar 16: Input Seed URL dan Max Crawl

Gambar 15: Memilih New Crawling Gambar 17: Mengirim Request

Uji Coba Offline Crawling Lalu proses crawling akan berjalan, dan akan muncul
Pada uji coba ini dilakukan dengan cara pengguna hand- tampilan progress dari proses seperti pada Gambar 18. Pro-
phone memasukkan seed_url dan maksimum crawling lalu ses tersebut akan berjalan lebih cepat karena proses berlang-
memilih offline crawling. Adapun langkah-langkah terli- sung secara offline. Angka di samping progress itu adalah
hat pada Gambar 21 - Gambar 23. jumlah url yang sudah diproses. Setelah proses crawling
Pertama-tama pengguna memilih menu New Crawling selesai, akan muncul daftar url hasil crawling seperti Gam-
seperti pada Gambar 15. Kemudian pengguna akan mema- bar 19.
sukkan seed_url dan maksimum crawling seperti pada Gam- Setelah itu pengguna dapat memilih salah satu url un-
bar 16. Lalu mengirim request tersebut dengan memilih tuk ditampilkan pada browser.
menu Menu > Send, seperti pada Gambar 16. Setelah itu,
akan tampil pilihan untuk melakukan online crawling atau Uji Coba View History
offline crawling seperti pada Gambar 17. Pengguna bisa Pada uji coba ini dilakukan dengan cara pengguna hand-
memilih Cancel. phone memilih menu history, seperti pada Gambar 20 dan

132
Sarwosri, Aplikasi Web Crawler untuk Web Content pada Mobile Phone

Gambar 18: Pilihan Metode Crawling Gambar 22: Menghapus History

Gambar 19: Crawling Sedang Diproses Gambar 23: Tampilan Halaman Web Pada Browser

Gambar 21. Setelah itu akan muncul daftar proses crawl-


ing yang telah dilakukan, seperti pada Gambar 22. Setelah
itu pengguna dapat memilih salah satu dari daftar tersebut
unuk ditampilkan detail hasilnya. Maka akan muncul daf-
tar hasil crawling seperti pada Gambar 21. Pengguna juga
dapat menghapus daftar tersebut, dengan memilih menu
Menu > Delete, seperti pada Gambar 23.

Uji Coba View Result


Pada uji coba ini dilakukan dengan cara pengguna hand-
phone memilih url yang akan ditampilkan pada browser,
seperti pada Gambar 20. Setelah itu akan muncul browser,
Gambar 20: Daftar URL Hasil Crawling seperti pada Gambar 23.

SIMPULAN
Setelah dilakukan serangkaian uji coba dan analisa ter-
hadap perangkat lunak yang dibuat, maka dapat diambil
kesimpulan sebagai berikut. Proses pendahuluan dari crawl-
ing yaitu proses koneksi antara client dan server sudah
berhasil dilaksanakan. Setelah dilakukan crawling maka
proses pengiriman file XML hasil crawling juga sudah ber-
hasil. Untuk kemudahan pengguna melihat hasil crawling,
fitur proses filtering Mobile Content dengan menggunakan
beberapa identifikator sudah berhasil. Kemudian tampi-
lan akhir pada browser juga sudah berhasil terintegrasi ke
aplikasi meskipun tampilan tersebut belum bisa dikatakan
sempurna
Gambar 21: Daftar History Crawling

133
Volume 7, Nomor 3, Januari 2009 : 127–134

DAFTAR PUSTAKA [4] Koster, M.: A Standard for Robot Exclusion. (2008)

[1] LeClaire, J.: Mobile Browsing Heads Toward the [5] Schildt Herbert, H.J.: Crawling The Web With Java.
Mainstream. (2008) McGraw-Hill (2005)
[2] Takeno, H.: Developing Web Crawler for Massive Mo- [6] Paul J. Timmins, Sean McCormick, E.A.C.E.W.:
bile Search Service. IEEE (2006) Characteristics of Mobile Web Content. Worcester
Polytechnic Institute (2006)
[3] Salahuddin, M.: Pemrograman J2ME: Belajar Cepat
Pemrograman Perangkat Lunak Mobile. Informatika
(2006)

134

View publication stats

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy