perancangan dan implementasi finite...

16
4 1. Pendahuluan Perkembangan dalam dunia handphone semakin pesat, hampir setiap saat produk handphone baru bertambah. Pesatnya laju pertumbuhan pengguna perangkat seluler membuat kebutuhan informasi akan handphone semakin meningkat. Oleh karena itu informasi mengenai harga dan spesifikasi handphone menjadi dibutuhkan. NetDesain adalah perusahaan pengembang website yang didirikan pada tahun 1999. Penawaran jasa dan produk NetDesain meliputi software product, mobile system, workflow dan enterprise system. Selain sebagai developer, NetDesain sendiri berdedikasi untuk membantu klien dalam memenuhi kebutuhan akan website termasuk konsultasi, desain, pengembangan, testing, implementasi, training dan maintenance. X-Phones.com adalah salah satu website yang dibangun oleh NetDesain yang menawarkan berbagai hal terkait komunitas handphone di Indonesia dan juga memberikan informasi yang berkaitan dengan handphone. Pada website X- Phones.com, para pengguna handphone dapat memperoleh beragam informasi mengenai spesifikasi handphone dari yang terlama sampai yang terbaru, serta harga handphone baru dan bekas. Oleh karena itu informasi yang disajikan harus diperbaharui setiap hari, guna membangun kepercayaan dari pengunjung website X-Phones.com. Selama ini prosedur input dan update data spesifikasi dan harga handphone masih dilakukan secara manual, dengan cara mengumpulkan data harga dan spesifikasi handphone yang akan di-input, membuat list merek dan tipe handphone, melihat field yang dibutuhkan pada website referensi, kemudian data harga dan spesifikasi handphone di-input ke dalam excel. Data harga dan spesifikasi handphone yang telah di-input ke dalam excel akan diperiksa apakah data harga dan spesifikasi handphone ada yang salah atau tidak, apabila tidak ada yang salah maka data harga dan spesifikasi handphone akan di-input-kan ke dalam database. Berdasarkan permasalahan yang ada maka muncul gagasan untuk membangun sebuah Aplikasi Pengambilan Data Harga dan Spesifikasi Handphone dengan Menerapkan Teknik Grabbing. Teknik grabbing dipilih karena dapat mengambil teks atau konten yang terselip pada tag HTML, selain itu juga dapat menelusuri seluruh bagian website serta gratis dalam penerapannya, dan dapat mengambil konten sesuai dengan keinginan dan kebutuhan pengguna. Aplikasi ini akan mengambil data spesifikasi dan harga handphone dengan teknik grabbing sehingga admin tidak perlu lagi melakukan input data harga dan spesifikasi handphone dengan cara mengetikkan data secara manual ke dalam database. Diharapkan aplikasi ini dapat membantu admin dalam proses memasukkan data harga dan spesifikasi handphone secara langsung ke dalam database. 2. Kajian Pustaka Pada penelitian tentang Aplikasi Web Grabber untuk Mengambil Halaman Web Sesuai dengan Keyword yang Diinputkan”, diperoleh kesimpulan bahwa aplikasi web grabber yang diciptakan mampu melakukan pencarian

Upload: lamanh

Post on 08-Jul-2019

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

4

1. Pendahuluan

Perkembangan dalam dunia handphone semakin pesat, hampir setiap saat

produk handphone baru bertambah. Pesatnya laju pertumbuhan pengguna

perangkat seluler membuat kebutuhan informasi akan handphone semakin

meningkat. Oleh karena itu informasi mengenai harga dan spesifikasi handphone

menjadi dibutuhkan.

NetDesain adalah perusahaan pengembang website yang didirikan pada

tahun 1999. Penawaran jasa dan produk NetDesain meliputi software product,

mobile system, workflow dan enterprise system. Selain sebagai developer,

NetDesain sendiri berdedikasi untuk membantu klien dalam memenuhi kebutuhan

akan website termasuk konsultasi, desain, pengembangan, testing, implementasi,

training dan maintenance.

X-Phones.com adalah salah satu website yang dibangun oleh NetDesain

yang menawarkan berbagai hal terkait komunitas handphone di Indonesia dan

juga memberikan informasi yang berkaitan dengan handphone. Pada website X-

Phones.com, para pengguna handphone dapat memperoleh beragam informasi

mengenai spesifikasi handphone dari yang terlama sampai yang terbaru, serta

harga handphone baru dan bekas. Oleh karena itu informasi yang disajikan harus

diperbaharui setiap hari, guna membangun kepercayaan dari pengunjung website

X-Phones.com. Selama ini prosedur input dan update data spesifikasi dan harga

handphone masih dilakukan secara manual, dengan cara mengumpulkan data

harga dan spesifikasi handphone yang akan di-input, membuat list merek dan tipe

handphone, melihat field yang dibutuhkan pada website referensi, kemudian data

harga dan spesifikasi handphone di-input ke dalam excel. Data harga dan

spesifikasi handphone yang telah di-input ke dalam excel akan diperiksa apakah

data harga dan spesifikasi handphone ada yang salah atau tidak, apabila tidak ada

yang salah maka data harga dan spesifikasi handphone akan di-input-kan ke

dalam database.

Berdasarkan permasalahan yang ada maka muncul gagasan untuk

membangun sebuah Aplikasi Pengambilan Data Harga dan Spesifikasi

Handphone dengan Menerapkan Teknik Grabbing. Teknik grabbing dipilih

karena dapat mengambil teks atau konten yang terselip pada tag HTML, selain itu

juga dapat menelusuri seluruh bagian website serta gratis dalam penerapannya,

dan dapat mengambil konten sesuai dengan keinginan dan kebutuhan pengguna.

Aplikasi ini akan mengambil data spesifikasi dan harga handphone dengan teknik

grabbing sehingga admin tidak perlu lagi melakukan input data harga dan

spesifikasi handphone dengan cara mengetikkan data secara manual ke dalam

database. Diharapkan aplikasi ini dapat membantu admin dalam proses

memasukkan data harga dan spesifikasi handphone secara langsung ke dalam

database.

2. Kajian Pustaka

Pada penelitian tentang “Aplikasi Web Grabber untuk Mengambil

Halaman Web Sesuai dengan Keyword yang Diinputkan”, diperoleh kesimpulan

bahwa aplikasi web grabber yang diciptakan mampu melakukan pencarian

Page 2: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

5

halaman-halaman web sesuai dengan topik yang diinginkan dengan memasukkan

keyword yang diinginkan tanpa perlu membuka halaman web secara manual,

hasilnya yang berupa halaman-halaman web secara otomatis tersimpan pada

komputer dan dapat dilihat secara offline [1]. Selain itu web grabber juga telah

dimanfaatkan oleh sebuah penyedia plugin yang bernama WiseLoop, di mana

pada salah satu demo plugin yaitu PHP Web Grabber, pengguna dapat

memperoleh konten media berupa gambar dari website Flickr.com hanya dengan

memasukkan keyword pada input yang tersedia.

Pada penelitian lain yang berjudul “Perancangan dan Implementasi Music

Downloader Extension Pada Web Browser Dengan Platform Google Chrome”,

diperoleh kesimpulan bahwa aplikasi yang diciptakan bermanfaat karena

memudahkan user dalam pencarian dan pengunduhan lagu yang diinginkan

berdasarkan penyanyi atau judul lagu. Selain itu juga mempermudah dalam

pencarian lirik lagu berdasarkan judul lagu atau penyanyi [2]. Pada Perancangan

dan Implementasi Music Downloader Extension Pada Web Browser Dengan

Platform Google Chrome, proses memperoleh link untuk mengunduh lagu dan

lirik lagu dilakukan dengan mengambil konten dari website lain yang menjadi

referensi.

Berdasarkan penelitian sebelumnya yang membahas tentang web grabber

dan tentang pengunduhan lagu maka melalui penelitian ini akan dibangun sebuah

aplikasi pengambilan data harga dan spesifikasi handphone dengan menerapkan

teknik grabbing, untuk mendapatkan data dari website yang menjadi referensi X-

Phones.com.

Teknik Grabbing

Teknik grabbing adalah teknik mengambil teks atau konten pada situs lain

dengan cURL kemudian diletakkan pada website yang lain. Konsep grabbing

berbeda dari web service, di mana informasi atau data yang diambil tidak

disajikan dalam bentuk tertentu seperti XML ataupun JSON. Data yang diambil

berada pada halaman website atau dengan kata lain terselip pada tag HTML [3].

Pada teknik grabbing, selain membaca file HTML dengan cURL

diperlukan pula sebuah metode untuk mengambil data atau informasi yang terselip

pada file HTML, yaitu dengan function explode() [4]. Konsep dari function

explode() adalah memotong suatu data dalam hal ini tag HTML, berdasar keyword

tertentu dan menghasilkan data array.

Konsep dari teknik grabbing sendiri dalam penerapannya menggunakan

fungsi untuk membaca halaman website dan fungsi untuk memotong tag HTML,

sehingga diperoleh konten atau teks yang dibutuhkan.

cURL

cURL (Client URL), dikembangkan sebagai alat bantu untuk transfer data

dan file dengan sintaks URL melalui bermacam-macam protokol. Fungsi-fungsi

cURL tersimpan dalam libcurl yang tersedia untuk berbagai bahasa pemrograman

termasuk PHP [5].

cURL digunakan untuk mentransfer data dari dan ke server. Sebenarnya

ada banyak perangkat transfer data layaknya cURL, namun cURL memiliki fitur

Page 3: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

6

yang lebih lengkap di antara perangkat-perangkat lainnya seperti dukungan

terhadap HTTP, FTP, SFTP, SOCKS, TFTP, IMAP, POP3, SMTP dan lain-lain

[6].

NetDesain

NetDesain adalah perusahaan pengembang website. Perusahaan ini

didirikan pada tahun 1999. Penawaran jasa dan produk NetDesain meliputi

software product, mobile system, workflow dan enterprise system. Selain sebagai

developer, NetDesain sendiri berdedikasi untuk membantu klien dalam memenuhi

kebutuhan akan website termasuk konsultasi, desain, pengembangan, testing,

implementasi, training dan maintenance.

Selain di Bandung, NetDesain juga memiliki cabang di Jakarta. Selama

lebih dari 10 tahun, NetDesain terus mencari inovasi yang terbaik dan tidak

berhenti agar dapat melayani pelanggan dengan lebih baik lagi, maka dari itu

NetDesain terus mengikuti perkembangan web. NetDesain memiliki prinsip yang

selalu ingin memudahkan klien dalam menggunakan produk dari perusahaan ini,

oleh karena itu NetDesain selalu memberi solusi yang terbaik kepada klein dalam

membuat website.

Selama 10 tahun lebih, NetDesain berusaha untuk konsistensi terhadap

komitmen dan dedikasi. Selain itu, konsistensi keahlian tehnik dan manajemen

pengembangan web selalu dipertahankan dengan baik. Prestasi yang dimiliki

NetDesain tentu saja tidak didapat secara mudah. Selain NetDesain mempunyai

developer handal yang memiliki pengalaman dalam mengembangkan website,

team work dalam perusahaan ini sangat baik. Sistem menejemen perusahaan yang

baik dan tenaga kerja yang berkompeten serta promosi yang dikemas secara baik,

tidak heran jika NetDesain bisa dipercaya oleh klien dan tetap berdiri hingga saat

ini. NetDesain juga memberikan solusi web secara total mulai dari pembangunan

website, pemeliharaan website, serta jasa domain dan hosting.

X-Phones.com

X-Phones.com adalah salah satu website yang dibangun oleh NetDesain

yang menawarkan berbagai hal terkait komunitas handphone di Indonesia dan

akan memberikan informasi seputar dunia handphone. Pada website X-

phones.com para pengguna handphone dapat memperoleh beragam informasi

mengenai spesifikasi handphone dari yang terlama sampai yang terbaru, harga

handphone baik handphone baru maupun bekas, selain itu website X-Phones.com

juga menyediakan informasi terbaru mengenai berita, artikel, informasi mengenai

operator baik GSM maupun non-GSM. Website X-Phones.com juga menyediakan

blog dan artikel tentang handphone dan perkembangannya yang berguna bagi

pengguna handphone maupun calon pengguna. Oleh karena itu informasi yang

disajikan harus diperbaharui setiap hari guna membangun kepercayaan dari

pengunjung website X-Phones.com. Selama ini prosedur input dan update data

spesifikasi dan harga handphone masih dilakukan secara manual, dengan cara

mengumpulkan data harga dan spesifikasi handphone yang akan di-input,

membuat list merek dan tipe handphone, melihat field yang dibutuhkan pada

website referensi, kemudian data harga dan spesifikasi handphone di-input ke

dalam excel. Data harga dan spesifikasi handphone yang telah di-input ke dalam

Page 4: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

7

excel akan diperiksa apakah data harga dan spesifikasi handphone ada yang salah

atau tidak, apabila tidak ada yang salah maka data harga dan spesifikasi

handphone akan di-input-kan ke dalam database. Oleh karena itu dibutuhkan

aplikasi yang dapat membantu memudahkan admin dalam melakukan input data

harga dan spesifikasi handphone ke dalam database.

3. Metode dan Perancangan Sistem

Prototype Model adalah salah satu metode pengembangan perangkat lunak

yang dibuat dengan pendekatan aspek desain, fungsi dan user-interface.

Penentuan tujuan umum dilakukan oleh developer dan user untuk mengetahui

gambaran dan kebutuhan pada perangakat lunak yang akan dibangun. Bagan

mengenai prototype model dapat dilihat pada Gambar 1

Gambar 1 Bagan Prototype Model [7]

Tahap-tahap dalam protoype model adalah sebagai berikut: (1) Listen to

Customer: Analisis mengenai apa saja yang dibutuhkan dalam membangun

sebuah aplikasi pengambilan data harga dan spesifikasi handphone dengan

menerapkan teknik grabbing. Kebutuhan dari sistem adalah sebagai berikut:

Aplikasi melakukan grabbing untuk mendapatkan data spesifikasi dan harga

handphone yang nantinya disimpan ke dalam database, sehingga tidak perlu

memasukkan data harga dan spesifikasi handphone dengan cara mengetikkan

secara manual, untuk data harga handphone apabila data belum tersimpan akan

ditambahkan, apabila data sudah tersimpan maka akan di-update, untuk

spesifikasi handphone apabila data sudah tersimpan maka saat melakukan

grabbing berikutnya data tidak tampil; (2) Build: Setelah analisis kebutuhan dan

informasi mengenai aplikasi pengambilan data harga dan spesifikasi handphone

dengan menerapkan teknik grabbing, langkah berikutnya adalah membangun

perancangan dengan menggunakan UML (Unified Modelling Languange)

mengenai sistem yang akan dibangun nantinya. Selain itu dilakukan pula

perancangan pada user interface dengan menggunakan software Adobe

Photoshop. Rancangan yang diperoleh kemudian akan diterjemahkan ke dalam

Page 5: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

8

bahasa pemrograman PHP 5; (3) Customer Test: Tahap ini dilakukan guna

melihat prototyping yang dihasilkan sudah sesuai dengan yang diharapkan atau

belum. Evaluasi dilakukan dengan menunjukkan rancangan yang telah dibuat.

Apabila belum sesuai maka kembali ke proses awal yaitu pengumpulan kebutuhan

dan membangun prototyping kemudian melakukan evaluasi kembali sampai

prototype sesuai dengan apa yang diharapkan dan sistem siap digunakan.

Perancangan Sistem

Sistem dirancang dengan menggunakan UML (Unified Modelling

Language) yang terdiri dari use case diagram, activity diagram, sequence

diagram, class diagram dan deployment diagram.

Pada use case diagram, seorang admin harus melakukan login terlebih

dahulu ke dalam sistem, di mana login akan menentukan hak akses dari seorang

admin. Pada use case diagram hanya terdapat satu hak akses yaitu admin seperti

pada Gambar 2.

Gambar 2 Use Case Diagram

Admin dapat memilih halaman spesifikasi handphone atau harga

handphone. Pada halaman spesifikasi handphone, admin dapat melihat data

spesifikasi handphone yang telah di-grab, admin juga dapat memilih data

spesifikasi handphone yang akan disimpan ke dalam database. Admin dapat

melihat data spesifikasi handphone yang telah tersimpan pada database dan

admin dapat menghapus data spesifikasi handphone pada database. Sedangkan

pada halaman harga handphone, admin dapat melihat data harga handphone yang

telah di-grab, admin juga dapat memilih data harga handphone yang akan

disimpan ke dalam database. Admin dapat melihat data harga handphone yang

telah tersimpan pada database dan admin juga dapat menghapus data harga

handphone pada database.

Page 6: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

9

Class diagram menggambarkan struktur dan deskripsi, entity, boundry,

dan controller serta hubungannya satu sama lain. Aplikasi yang dibuat memiliki

class diagram seperti yang terlihat pada Gambar 3.

Gambar 3 Class Diagram Sistem

Pada class diagram sistem terdapat 3 entity yaitu data_ponsel,

tbharga_ponsel, dan tbuser. Data_ponsel adalah entity yang menampung field-

field data spesifikasi handphone. tbharga_ponsel adalah entity yang menampung

field-field data harga handphone. Selain entity data_ponsel dan entity

tbharga_ponsel, terdapat juga entity tbuser yang menampung data user pengguna

sistem. Entity tbUser terhubung dengan UserController yang menampung fungsi

getUser. Entity data_ponsel terhubung dengan SpesifikasiPonselController yang

berfungsi untuk menampung fungsi-fungsi manipulasi database, selain itu

SpesifikasiPonselController terhubung dengan sebuah boundry yang berupa user

interface. Entity tbharga_ponsel terhubung dengan HargaPonselController yang

berfungsi untuk menampung fungsi-fungsi manipulasi database.

HargaPonselController juga terhubung dengan sebuah boundry yang berupa user

interface.

Deployment diagram berfungsi untuk menampilkan rancangan fisik

jaringan dalam sistem. Pada Gambar 4 menunjukkan bahwa terdapat 4 (Empat)

komponen dalam proses deployment, yaitu Model, Controller, Database, yaitu

sebagai pengakses sistem.

Page 7: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

10

Gambar 4 Deployment Diagram Sistem

Pada Gambar 4 terlihat bahwa saat client mengakses sistem dan

mengirimkan request tertentu, maka request akan diproses terlebih dahulu oleh

model yang kemudian akan diteruskan kepada controller. Controller sendiri

menampung fungsi-fungsi yang diperlukan oleh sistem. Saat request dari client

diterima, akan ditentukan fungsi pada controller yang sesuai. Fungsi yang

dieksekusi akan mengakses database ataupun website referensi. Setelah respond

diterima maka respond akan dikembalikan melalui controller, kemudian menuju

model, hingga diterima oleh client.

Perancangan Teknik Grabbing

Perancangan dengan teknik grabbing untuk data spesifikasi handphone

yang diterapkan pada sistem dalam bentuk flowchart ditunjukkan Gambar 5.

Page 8: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

11

Gambar 5 Flowchart Teknik Grabbing Pada Sistem

Gambar 5 menjelaskan proses teknik grabbing pada sistem. Proses teknik

grabbing pada sistem adalah sebagai berikut: (1) Proses dimulai dengan admin

memilih merek handphone yang akan diambil datanya; (2) Sistem akan membaca

alamat website referensi sesuai merek yang dipilih dengan fungsi cURL; (3)

Memotong halaman website untuk memperoleh bagian yang dibutuhkan untuk

memperoleh data harga dan spesifikasi; (4) Diperoleh data banyaknya handphone

yang akan diambil datanya; (5) Dilakukan perulangan sejumlah banyaknya data,

di mana pada setiap perulangan akan dilakukan teknik grabbing yang memotong

halaman website sehingga diperoleh detail harga dan spesifikasi setiap

handphone. Untuk memperoleh detail harga dan spesifikasi digunakan delimiter

sesuai dengan tag HTML sehingga konten yang dibutuhkan dapat diperoleh; (6)

Pada spesifikasi handphone proses yang dilakukan adalah memotong halaman

website untuk memperoleh konten general handphone, body handphone, display

handphone, sound handphone, memory handphone, data handphone, camera

handphone, feature handphone, battery handphone, sedangkan pada harga

handphone proses yang dilakukan adalah memotong halaman website untuk

memperoleh data tipe handphone, gambar handphone, harga baru handphone,

harga bekas handphone; (7) Setelah semua data detail handphone diperoleh maka

Page 9: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

12

data akan ditampilkan; dan (8) Proses berlangsung terus menerus hingga diperoleh

data harga dan spesifikasi untuk semua tipe handphone.

4. Hasil dan Pembahasan

Penerapan Grabbing Data Spesifikasi Handphone

Kode Program 1 Perintah BacaHTML

Kode Program 2 merupakan sebuah function cURL untuk membaca

halaman HTML menjadi string.

Kode Program 3 Perintah untuk Membaca Alamat Web

Baris 1 pada Kode Program 3 menunjukkan perintah untuk membaca

halaman website referensi sesuai dengan merek yang dipilih.

Kode Program 4 Perintah untuk Memperoleh Banyak Data

Kode Program 4 merupakan kode program memperoleh banyaknya data

tipe handphone yang akan di-grab. Baris 1-5 merupakan perintah untuk

memotong halaman website referensi dan memperoleh banyaknya data dan

disimpan pada variable banyakdata pada baris 6.

Kode Program 5 Perintah Memotong Halaman Spesifikasi Setiap Tipe Handphone

1. function bacaHTML($url) { 2. // inisialisasi CURL 3. $data = curl_init(); 4. // setting CURL 5. curl_setopt($data, CURLOPT_RETURNTRANSFER, 1); 6. curl_setopt($data, CURLOPT_URL, $url); 7. // menjalankan CURL untuk membaca isi file 8. $hasil = curl_exec($data); 9. curl_close($data); 10. return $hasil;

11. }

1. $kodeHTML = bacaHTML('http://www.gsmarena.com/'.$hp.'.php');

1. for ($x=0;$x<$banyakdata;$x++) {

2. //data

3. $potong4 = explode('<strong>', $potong3[$x]);

4. $potong5=explode('<img src=http://st2.gsmarena.com/vv/thumb/',

$potong4[0]);

5. $potong6=explode('<a href="', $potong5[0]);

6. $potong7=explode('"',$potong6[1]);

7. $tampil= bacaHTML('http://www.gsmarena.com/'.$potong7[0].'');

1. $potong = explode('<div class="makers">', $kodeHTML); 2. $potong2 = explode('<br class="clear" />', $potong[1]); 3. $potong2x = explode('<br class="clear" />', $potong[2]); 4. $potonggabungan = $potong2[0].$potong2x[0]; 5. $potong3 = explode('</strong></a></li><li>', $potonggabungan); 6. $banyakdata=count($potong3);

Page 10: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

13

Kode Program 5 merupakan kode program untuk memotong tag HTML

halaman spesifikasi handphone setiap tipe handphone. Baris 1 merupakan

perintah untuk melakukan perulangan sebanyak data yang diperoleh. Baris 3-6

merupakan perintah untuk mendapatkan alamat spesifikasi setiap tipe handphone,

sedangkan baris ke 7 untuk membaca alamat spesifikasi setiap tipe handphone.

Kode Program 6 Perintah Mendapatkan Detail dari Spesifikasi Setiap Handphone

Baris 1-2 pada Kode Program 6 merupakan perintah untuk memperoleh

konten data pada spesifikasi handphone. Pada baris 3-14 merupakan perintah

untuk memperoleh detail spesifikasi seperti data GPRS, edge, WLAN, NFC,

USB. Baris 14-25 merupakan perintah untuk mendapatkan data NFC dan USB,

dilakukan fungsi percabangan if else untuk mengatasi apabila field spesifikasi

handphone yang satu dengan yang lainnya berbeda sehingga tidak terjadi

kesalahan dalam penempatan field di database. Penerapan teknik grabbing untuk

memperoleh detail dari data spesifikasi yang lain kurang lebih sama, yang

membedakan adalah delimiter pada fungsi explode.

Penerapan Grabbing Harga Handphone

Kode Program 8 Perintah BacaHTML

1. function bacaHTML($url) {

2. // inisialisasi CURL

3. $data = curl_init();

4. // setting CURL

5. curl_setopt($data, CURLOPT_RETURNTRANSFER, 1);

6. curl_setopt($data, CURLOPT_URL, $url);

7. // menjalankan CURL untuk membaca isi file

8. $hasil = curl_exec($data);

9. curl_close($data);

10. return $hasil; 11. }

1. $cutdata = explode('scope="row">Data</th>', $cutdetails2[0]);

2. $cutdata2 = explode('</table><table cellspacing="0">',$cutdata[1]);

3. $cutdatagprs = explode('class="nfo">', $cutdata2[0]);

4. $cutdatagprs2 = explode('</td>', $cutdatagprs[1]);

5. $gprs = $cutdatagprs2[0];

6. $cutdataedge = explode('</td>', $cutdatagprs[2]);

7. $edge = $cutdataedge[0];

8. $cutdata3g = explode('</td>', $cutdatagprs[3]);

9. $data3g = $cutdata3g[0];

10. $cutdatawlan = explode('</td>', $cutdatagprs[4]); 11. $wlan = $cutdatawlan[0]; 12. $cutdatabt = explode('</td>', $cutdatagprs[5]); 13. $bt = $cutdatabt[0]; 14. $cutdataNFC = explode('<td class="ttl">', $cutdata2[0]); 15. if (strpos($cutdataNFC[6], "NFC")!==false) { 16. $cutdataNFC = explode('</td>', $cutdatagprs[6]); 17. $NFC = $cutdataNFC[0]; 18. $cutdataUSB = explode('</td>', $cutdatagprs[7]); 19. $usb = $cutdataUSB[0]; 20. } 21. else if (strpos($cutdataNFC[6], "USB")!==false) { 22. $NFC = "-"; 23. $cutdataNFC = explode('</td>', $cutdatagprs[6]); 24. $usb = $cutdataNFC[0]; 25. }

Page 11: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

14

Kode Program 8 merupakan fungsi BacaHTML yang merupakan fungsi

cURL untuk membaca halaman HTML ke dalam bentuk string.

Kode Program 9 Perintah Membaca Alamat Web

Kode Program 9 menunjukkan perintah yang menjalankan fungsi

bacaHTML untuk membaca alamat web berdasarkan merek dan value dalam

menampilkan data yang dipilih.

Kode Program 10 Halaman Harga Handphone

Kode Program 10 merupakan perintah untuk membaca halaman harga

handphone. Setelah alamat web dibaca menjadi string, baris 1-3 menunjukkan

perintah untuk memperoleh banyak data yang akan di-grab. Baris 5 merupakan

variabel yang menampung banyaknya data.

Kode Program 11 Perintah Memotong Konten Harga Handphone

Kode Progam 11 merupakan perintah untuk memperoleh konten harga

setiap tipe handphone dengan perulangan sebanyak jumlah data. Baris 1

menunjukkan banyaknya perulangan yang dilakukan. Baris 4-5 merupakan

perintah untuk memotong konten hingga diperoleh detail harga.

Kode Program 12 Perintah Memotong Konten Harga Handphone Baru

Kode Program 12 merupakan perintah untuk memperoleh konten harga

baru setiap tipe handphone. Baris 1-3 menunjukkan perintah untuk memotong

konten setiap tipe ponsel, hingga diperoleh data harga baru. Baris 4 merupakan

variabel yang menampung data harga baru yang diperoleh.

1. $kodeHTML =

bacaHTML('http://www.situshp.com/daftar_harga/'.$merk2.$alamatsort);

1. $pecah = explode('<div id="hp"', $kodeHTML); 2. $pecah2 = explode('<div id="logos" align="center">', $pecah[1]); 3. $pecah3 = explode('<div class="code">', $pecah2[0]); 4. $pecahgambar = explode('div class ="each">', $pecah2[0]); 5. $jmldata=count($pecah3);

1. for($x=1;$x<$jmldata;$x++) {

2. $x2=$jmldata+$x;

3. $pecah3[$x];

4. $pecah4=explode("</div>", $pecah3[$x]);

5. $pecah5=explode("</a>", $pecah4[0]);

1. $pecah7=explode(",-", $pecah4[2]); 2. $pecah8=explode("Rp.", $pecah7[0]); 3. $pecah9=explode(",", $pecah8[1]); 4. $hargabaru=$pecah9[0].$pecah9[1].$pecah9[2];

Page 12: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

15

Kode Program 13 Perintah Memotong Konten Harga Handphone Lama

Kode Progam 13 merupakan perintah untuk memperoleh konten harga

lama setiap tipe handphone. Baris 1-3 menunjukkan perintah untuk memotong

konten setiap tipe handphone, hingga diperoleh data harga lama. Baris 4

merupakan variabel yang menampung data harga lama yang diperoleh.

Pengujian dan Analisis

Pengujian aplikasi dilakukan oleh developer, di mana developer akan

memasukkan input dan melihat apakah output yang ditampilkan sudah sesuai atau

belum. Proses pengujian dilakukan untuk semua merek handphone dan pada harga

handphone selain semua merek juga setiap urutan sesuai tanggal liris, harga, tipe

handphone.

Pengujian aplikasi juga dilakukan oleh user untuk mencoba dan

melakukan pengecekan pada setiap fungsi yang ada untuk mengetahui apakah ada

bug dan apakah sudah sesuai dengan requirement sebelumnya.

Gambar 6 menunjukkan halaman untuk memilih merek spesifikasi

handphone yang akan di-grab. Pengujian akan dilakukan dengan mencoba untuk

memperoleh data spesifikasi handphone Samsung.

Gambar 6 Halaman untuk Memilih Merek yang Di-grab

Setelah sistem memperoleh merek dari handphone yang akan diambil data

spesifikasinya, maka sistem akan membaca halaman website referensi sesuai

merek yang dipilih.

1. $pecah10=explode(",-", $pecah4[4]); 2. $pecah11=explode("Rp.", $pecah10[0]); 3. $pecah12=explode(",", $pecah11[1]); 4. $hargalama=$pecah12[0].$pecah12[1].$pecah12[2];

Page 13: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

16

Gambar 7 Website Referensi untuk Memperoleh Data Spesifikasi

Gambar 7 menunjukkan website referensi untuk memperoleh data

spesifikasi dengan merek Samsung. Setelah website berhasil dibaca maka sistem

akan menggunakan teknik grabbing untuk memotong halaman website dan

memperoleh bagian yang menampung data spesifikasi yang dikehendaki, yaitu

bagian yang diberi kotak merah pada Gambar 7. Sistem kemudian akan

menggunakan teknik grabbing untuk mengetahui jumlah tipe handphone yang

akan diambil data spesifikasinya, serta link halaman website dari setiap tipe

handphone.

Dilakukan perulangan sejumlah banyaknya tipe handphone di mana setiap

perulangan sistem akan mengakses halaman website dari setiap tipe handphone

untuk memperoleh detail data spesifikasi.

Gambar 8 Halaman Website Data Spesifikasi Setiap Tipe Handphone

Page 14: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

17

Gambar 8 menunjukkan halaman website data spesifikasi setiap tipe

handphone. Pada setiap halaman website data spesifikasi setiap tipe handphone,

sistem akan menerapkan teknik grabbing untuk memperoleh detail data spesifikasi

seperti yang terlihat pada bagian kotak merah Gambar 8.

Teknik grabbing yang diterapkan akan memotong setiap bagian detail

spesifikasi pada halaman website referensi untuk memperoleh data yang

dibutuhkan. Data spesifikasi yang diperoleh kemudian akan disimpan untuk

kemudian ditampilkan.

Gambar 9 Data Spesifikasi Handphone yang Di-grab

Gambar 9 menunjukkan data yang telah berhasil di-grab. Setelah data

berhasil di-grab, developer melakukan pengecekan apakah data yang diperoleh

telah sesuai dengan input, apakah keterangan pada data spesifikasi handphone

telah sesuai dengan setiap field dan melihat data dari sumber apakah sudah tepat

atau belum. Pada Gambar 9 terlihat bahwa teknik grabbing yang digunakan dapat

memperoleh setiap konten data spesifikasi sesuai dengan website referensi.

Gambar 10 menunjukkan halaman untuk memilih merek harga handphone

yang akan di-grab dan menentukan apakah data diurutkan sesuai tanggal liris,

harga, atau tipe handphone. Pengujian akan dilakukan dengan mencoba

mengambil data harga handphone dengan merek apple sesuai tanggal rilis.

Gambar 10 Halaman untuk Memilih Merek yang Di-grab

Setelah memilih merek maka sistem akan membaca halaman website

referensi sesuai merek yang telah dipilih.

Page 15: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

18

Gambar 11 Halaman Website Referensi Harga Handphone

Gambar 11 merupakan website yang menjadi referensi untuk memperoleh

data harga handphone. Setelah website berhasil dibaca oleh sistem, selanjutnya

sistem akan menerapkan teknik grabbing untuk memotong halaman website

referensi dan memperoleh banyaknya data handphone.

Sistem kemudian akan melakukan perulangan sebanyak jumlah data yang

diperoleh. Pada setiap perulangan akan dilakukan teknik grabbing untuk

memperoleh data pada setiap tipe handphone yaitu gambar, harga baru dan harga

lama.

Setelah data berhasil di-grab akan masuk ke halaman data harga

handphone yang telah di-grab.

Gambar 12 Data Harga Handphone yang Di-grab

Gambar 12 menunjukkan halaman apabila data telah berhasil di-grab.

Setelah data berhasil di-grab, developer melakukan pengecekan apakah data yang

diperoleh telah sesuai dengan input, apakah keterangan pada data harga

handphone telah sesuai dengan setiap field dan melihat data dari sumber web

referensi apakah sudah tepat atau belum. Pada Gambar 15 terlihat bahwa teknik

grabbing dapat mengambil data gambar, harga baru dan harga lama setiap

handphone.

Berdasarkan hasil pengujian yang dilakukan diperoleh kesimpulan bahwa

aplikasi dengan teknik grabbing dapat melakukan proses pengambilan data harga

dan spesifikasi handphone sesuai dengan website yang menjadi referensi bagi

Page 16: Perancangan dan Implementasi Finite Automatarepository.uksw.edu/bitstream/123456789/2407/2/T1_672008058_Full text.pdf · 4 1. Pendahuluan Perkembangan dalam dunia handphone semakin

19

website X-Phones.com. Data yang diperoleh sudah sesuai dengan field yang ada

pada aplikasi, dan fungsi manipulasi database berhasil dilakukan. Selain itu

diperoleh hasil bahwa teknik grabbing yang diterapkan memiliki kelebihan yaitu

dapat menelusuri halaman website serta gratis dalam penerapannya, dan dapat

memperoleh data sesuai kebutuhan pengguna. Adapun kelemahan dari teknik

grabbing yaitu apabila terjadi perubahan tag HTML pada delimiter yang

digunakan maka data tidak dapat diperoleh.

5. Simpulan

Berdasarkan hasil penelitian yang telah dilakukan maka dapat disimpulkan

bahwa teknik grabbing dapat melakukan proses pengambilan data harga dan

spesifikasi handphone sesuai dengan website yang menjadi referensi. Selain itu

diperoleh hasil bahwa teknik grabbing yang diterapkan memiliki kelebihan yaitu

dapat menelusuri halaman website serta gratis dalam penerapannya, dan dapat

memperoleh data sesuai kebutuhan pengguna. Aplikasi pengambilan data harga

dan spesifikasi handphone dapat memudahkan admin saat melakukan input dan

update data harga dan spesifikasi handphone ke dalam database. Pengembangan

yang dapat dilakukan pada penelitian ini di kemudian hari adalah menambahkan

sumber yang menjadi referensi untuk data harga dan spesifikasi handphone.

Menambahkan fungsi notifikasi pada aplikasi apabila terdapat data spesifikasi

handphone baru atau terdapat perubahan data harga handphone.

6. Pustaka

[1] Budhi, Gregorius S., Djoni H. Setiabudi, Budi Raharjo, 2006, Aplikasi Web

Grabber untuk Mengambil Halaman Web Sesuai Dengan Keyword yang

Diinputkan, Surabaya : Fakultas Teknologi Industri, Universitas Kristen

Petra.

[2] Kitada, Christina Kusumawardhani, 2011, Perancangan dan Implementasi

Music Downloader Extension Pada Web Browser Dengan Platform Google

Chrome, Salatiga : Fakultas Teknologi Informasi, Universitas Kristen Satya

Wacana.

[3] Ari, Rosihan, 2010, Teknik Grabbing (Mengambil Teks Dari Situs Lain)

Dengan CURL, http://blog.rosihanari.net/teknik-grabbing-mengambil-teks-

dari-situs-lain-dengan-curl, Diakses tanggal 15 November 2011.

[4] Santoso, Wahyu, 2010, Teknik Grabbing (Mengambil Teks Dari Situs

Lain), http://wahyusantoso.staff.umm.ac.id/ilmu-umum/master-

program/buku-php-mysql/teknik-grabing-mengambil-text-dari-web-lain,

Diakses tanggal 7 Maret 2012.

[5] Suharsono, Aswin, 2011, Sistem Temu Kembali : Tutorial cURL,

http://aswinsuharsono.lecture.ub.ac.id/2011/09/sistem-temu-kembali-

informasi-tutorial-curl/, Diakses tanggal 7 Maret 2012.

[6] cURL, 2012, http://curl.haxx.se/, Diakses tanggal 7 Maret 2012.

[7] Pressman, Roger S., 2001, Software Engineering a Practitioner’s

Approach, New York : McGraw-Hill Higher Education.