pembangunan prototipe pencarian barang di berbagai toko online

advertisement
PEMBANGUNAN PROTOTIPE PENCARIAN BARANG DI
BERBAGAI TOKO ONLINE MENGGUNAKAN TEKNIK WEB
SCRAPING
(STUDI KASUS : TOKO ONLINE DI INDONESIA)
TUGAS AKHIR
Disusun sebagai salah satu syarat untuk kelulusan
Program Strata 1, Program Studi Teknik Informatika,
Universitas Pasundan Bandung
oleh :
Aziz Firmansyah
Nrp. 12.304.0043
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS PASUNDAN BANDUNG
JANUARI 2017
LEMBAR PENGESAHAN
LAPORAN TUGAS AKHIR
Telah diujikan dan dipertahankan dalam Sidang Sarjana Program Studi Teknik Informatika
Universitas Pasundan Bandung, pada hari dan tanggal sidang sesuai berita acara sidang, tugas
akhir dari :
Nama : Aziz Firmansyah
Nrp
: 12.304.0043
Dengan judul :
“PEMBANGUNAN PROTOTIPE PENCARIAN BARANG
DI BERBAGAI TOKO ONLINE MENGGUNAKAN
TEKNIK WEB SCRAPING
(STUDI KASUS : TOKO ONLINE DI INDONESIA)”
Bandung, Januari 2017
Pembimbing Utama
(Dr.Ir.Leony Lidya.MT)
2
LEMBAR PERNYATAAN KEASLIAN TUGAS AKHIR
Saya menyatakan dengan sesungguhnya bahwa :
1. Tugas akhir ini adalah benar-benar asli dan belum pernah diajukan untuk mendapatkan gelar
akademik, baik di Universitas Pasundan Bandung maupun di Perguruan Tinggi lainnya
2. Tugas akhir ini merupakan gagasan, rumusan dan penelitian saya sendiri, tanpa bantuan pihak lain
kecuali arahan dari tim Dosen Pembimbing
3. Dalam tugas akhir ini tidak terdapat karya atau pendapat orang lain, kecuali bagian-bagian tertentu
dalam penulisan laporan Tugas Akhir yang saya kutip dari hasil karya orang lain telah dituliskan
dalam sumbernya secara jelas sesuai dengan norma, kaidah, dan etika penulisan karya ilmiah, serta
disebutkan dalam Daftar Pustaka pada tugas akhir ini
4. Kakas, perangkat lunak, dan alat bantu kerja lainnya yang digunakan dalam penelitian ini
sepenuhnya menjadi tanggung jawab saya, bukan tanggung jawab Universitas Pasundan Bandung
Apabila di kemudian hari ditemukan seluruh atau sebagian laporan tugas akhir ini bukan hasil karya
saya sendiri atau adanya plagiasi dalam bagian-bagian tertentu, saya bersedia menerima sangsi
akademik, termasuk pencabutan gelar akademik yang saya sandang sesuai dengan norma yang berlaku
di Universitas Pasundan, serta perundang-undangan lainnya
.
Bandung, Januari 2017
Yang membuat pernyataan,
Materai
6000,-
( Aziz Firmansyah )
NRP. 12.304.0043
ABSTRAK
Masyarakat memiliki kebutuhan akan sarana untuk pencarian barang dagang secara online.
Dalam melakukan pencarian barang dapat menggunakan search engine atau langsung mengunjungi
situs e-commerce tertentu. Cara ini agak sulit untuk membandingkan barang.
Web Scraping dan cURL memiliki manfaat besar untuk pengembangan perangkat lunak
contohnya untuk aplikasi pencarian barang di berbagai toko online. Aplikasi ini berjalan dengan cara
mengumpulkan informasi dari berbagai toko online untuk ditampilkan kembali ke pengguna.
Pada tugas akhir ini dilakukan pemodelan dan pembuatan prototipe pencarian barang di
berbagai toko online menggunakan web scraping dan cURL. Hasil dari tugas akhir ini berupa
prototipe pencarian barang dengan fitur yaitu dapat melakukan pencarian barang dengan mengunjungi
beberapa toko online yang sudah terdaftar, dapat mengurutkan hasil pencarian berdasarkan harga.
Kata Kunci : Web Scraping , cURL, aplikasi web, search engine, e-commerce
i
ABSTRACT
Community has a need for a means to search the merchandise online. In their search item can
use the search engine or go directly to a specific e-commerce site. This is quite difficult to compare the
goods.
Web scraping and cURL have major benefits for the development of software applications for
example to search items in various online stores. The application runs by collecting information from
various online stores to be displayed back to the user.
In this final project modeling and prototyping quest items at various stores online using web
scraping and cURL. The results of this thesis a prototype search items with features that can search
items by visiting some online stores are already registered, can sort search results by price.
Keywords: Web scraping, curl, web application, search engine, e-commerce.
ii
KATA PENGANTAR
Assalmu’alaikum, Wr. Wb
Segala puji dan syukur penulis panjatkan kehadirat Allah SWT. Dengan ridho-Nya penulis
mampu mengerjakan dan menyelesaikan laporan sseminar tugas akhir ini dengan judul ‘Pembangunan
Prototipe Pencarian Barang di berbagai Toko Online Menggunakan Teknik Web Scraping‘. Serta
sholawat selalu terlimpahkan untuk sang pencerah dalam gulita, pribadi mulia, rahmat bagi seluruh
semesta, Muhammad SAW.
Laporan Tugas Akhir ini ditujukan untuk memenuhi kelulusan strata 1 (satu) di Program Studi
Teknik Informatika Fakultas Teknik Universitas Pasundan. Dalam penulisan Proposal tugas akhir ini,
penulis ingin mengucapkan terima kasih kepada pihak yang terlibat baik secara langsung maupun tak
langsung serta moril maupun materil terhadap tugas akhir ini. Dengan segala hormat dan kerendahan
hati perkenankanlah penulis mengucapkan terimakasih kepada :
1. Pembimbing tugas akhir , Ibu Dr. Ir. Leony Lidya, M.T.
2. Kepada Orang Tua tersayang, yang selalu memberikan semangat, motivasi, dan do’anya
dalam pembuatan tugas akhir.
3. Seluruh civitas akademika Teknik Informatika di Universitas Pasundan Bandung yang telah
memberikan bekal ilmu selama penulis menimba ilmu.
4. Kepada teman-teman seperjuangan Universitas Pasundan Bandung yang tidak bisa semua
penulis sebutkan.
Penulis menyadari ketidaksempurnaan dalam penulisan Laporan Seminar Tugas Akhir ini dan
masih perlu belajar. Saran dan kritik di kemudian hari sangat penulis harapkan agar dapat memberikan
kontribusi serta manfaat yang lebih signifikan terkait topik Laporan Tugas Akhir ini.
Wasalamu’alaikum Wr.Wb
Bandung, Januari 2017
Penulis
iii
DAFTAR ISI
ABSTRAK .............................................................................................................................................. i
ABSTRACT ...........................................................................................................................................ii
KATA PENGANTAR ......................................................................................................................... iii
DAFTAR ISI ......................................................................................................................................... iv
DAFTAR TABEL ................................................................................................................................vii
DAFTAR GAMBAR ..........................................................................................................................viii
DAFTAR LAMPIRAN ......................................................................................................................... ix
DAFTAR SIMBOL................................................................................................................................ x
BAB 1 PENDAHULUAN ..................................................................................................................1-1
1.1. Latar Belakang .........................................................................................................................1-1
1.2. Identifikasi Masalah .................................................................................................................1-2
1.3. Tujuan Tugas Akhir .................................................................................................................1-2
1.4. Lingkup Tugas Akhir ...............................................................................................................1-2
1.5. Metodologi Tugas Akhir ..........................................................................................................1-3
1.6. Sistematika Penulisan Tugas Akhir ..........................................................................................1-4
BAB 2 LANDASAN TEORI ..............................................................................................................2-1
2.1. Prototipe...................................................................................................................................2-1
2.2. Pengenalan Serch Engine .........................................................................................................2-1
2.3. Pengenalan Web Scrapting ......................................................................................................2-1
2.4. Pengenalan cURL PHP ............................................................................................................2-2
2.4.1. Struktur Dasar Request cURL...........................................................................................2-2
2.5. Model Proses Pembangunan Perangkat Lunak.........................................................................2-3
2.6. Perancangan Pemodelan Perangkat Lunak ...............................................................................2-3
2.7. Tinjauan Teknologi ..................................................................................................................2-4
2.7.1. Boostrap ............................................................................................................................2-4
2.7.2. MySQL .............................................................................................................................2-4
2.7.3. Codeigniter .......................................................................................................................2-4
BAB 3 ANALISIS ..............................................................................................................................3-1
3.1. Kerangka Tugas Akhir .............................................................................................................3-1
3.2. Analisis ....................................................................................................................................3-2
3.3. Peta Analisis ............................................................................................................................3-2
3.3.1. Analisis Solusi ..................................................................................................................3-4
3.3.2. Analisis Penggunaan Konsep ............................................................................................3-4
3.3.3. Objek Penelitian ...............................................................................................................3-4
BAB 4 ANALISIS DAN PERANCANGAN ......................................................................................4-1
iv
4.1 Analisis Sistem yang Berjalan...................................................................................................4-1
4.2 Analisis Perbedaan Web Scraping dengan Web Crawler .........................................................4-3
4.3 Analisis Web Scraping ..............................................................................................................4-3
4.3.1 Create Scraping Template .................................................................................................4-3
4.3.2 Explore Site Navigation .....................................................................................................4-6
4.3.3 Automate Navigation and Extraction .................................................................................4-6
4.3.4 Extracted Data and Package .............................................................................................4-7
4.4 Kesimpulan Analisis Web Scraping ..........................................................................................4-7
4.5 Aplikasi yang akan Dibangun ...................................................................................................4-7
4.6 Digram Aktivitas .......................................................................................................................4-9
4.7 Analisis Pengguna ...................................................................................................................4-11
4.8 Analisis Kebutuhan Fungsional ..............................................................................................4-12
4.9 Perancangan Fungsional Sistem ..............................................................................................4-12
4.9.1 Deskripsi Use Case ..........................................................................................................4-12
4.9.2 Skenario Cara Kerja Fungsi .............................................................................................4-13
4.10 Diagram Sequence ................................................................................................................4-15
4.10.1 Digram Sequence Cari Barang .......................................................................................4-15
4.10.2 Diagram Sequence Kelola Toko Online (Tambah Daftar Toko Online) ........................4-16
4.10.3 Diagram Sequence Kelola Toko Online (Ubah Daftar Toko Online).............................4-16
4.10.4 Kelas Analisis ................................................................................................................4-17
4.11 Perancangan Perangkat Lunak ..............................................................................................4-18
4.11.1 Perancangan Arsitektur ..................................................................................................4-18
4.11.2 Perancangan Kelas .........................................................................................................4-19
4.11.3 Perancangan Data ..........................................................................................................4-20
4.12 Perancangan Antarmuka .......................................................................................................4-22
4.12.1 Antarmuka Halaman Utama...........................................................................................4-22
4.12.2 Antarmuka List Barang ..................................................................................................4-22
4.12.3 Antarmuka Form Tambah Daftar Toko Online ..............................................................4-23
4.12.4 Antarmuka Form Ubah Data Toko Online .....................................................................4-23
4.12.5 Antarmuka Daftar Toko Online .....................................................................................4-24
BAB 5 IMPLEMENTASI ...................................................................................................................5-1
5.1.
Implementasi .......................................................................................................................5-1
5.1.1.
Implementasi Perangkat Lunak....................................................................................5-1
5.1.1 Kebutuhan Implementasi ...................................................................................................5-1
5.2 Implementasi Data ....................................................................................................................5-3
5.3 Implementasi Arsitektur ............................................................................................................5-3
v
5.4 Implementasi Antarmuka ..........................................................................................................5-4
5.4.1 Antarmuka Halaman Utama ..............................................................................................5-4
5.4.2 Antarmuka Profile Pengguna .............................................................................................5-5
BAB 5 KESIMPULAN DAN SARAN ...............................................................................................5-1
5.1. KESIMPULAN ........................................................................................................................5-1
5.2. SARAN ....................................................................................................................................5-1
DAFTAR PUSTAKA
LAMPIRAN
vi
DAFTAR TABEL
Tabel 3.1 Rancangan Penelitian ..........................................................................................................3-1
Tabel 3.2 Tahapan Rencana Analisis ..................................................................................................3-3
Tabel 4.1 Create Scraping Template ...................................................................................................4-3
Tabel 4.2 Explore Site Navigation ......................................................................................................4-6
Tabel 4.3 Deskripsi Pengguna ...........................................................................................................4-11
Tabel 4.4Kebutuhan Fungsional Sitem..............................................................................................4-12
Tabel 4.5 Deskripsi Use Case ............................................................................................................4-12
Tabel 4.6Skenario Use Case Cari Barang ..........................................................................................4-13
Tabel 4.7 Skenariao Use Case Sorting Barang ..................................................................................4-13
Tabel 4.8 Skenario Use Case Kelola Daftar Toko Online (Tambah daftar Toko Online) ..................4-14
Tabel 4.9 Skenario Use Case Kelola Daftar Toko Online (Ubah Data Toko Online) ........................4-14
Tabel 4.10Skenario Use Case Kelola Daftar Toko Online (Hapus daftar Toko Online)....................4-14
Tabel 4.11 Kelas Analisis ..................................................................................................................4-18
Tabel 4.12 Perancangan Kelas Perangkat Lunak ...............................................................................4-19
Tabel 4.13 Perancangan Atribut Kelas ..............................................................................................4-19
Tabel 4.14 Perancangan Data Perangkat Lunak ................................................................................4-21
Tabel 5-1Kebutuhan Perangkat Keras .................................................................................................5-1
Tabel 5-2 Kebutuhan Perangkat Lunak ...............................................................................................5-2
Tabel 5-3 Struktur Folder Perangkat Lunak ........................................................................................5-2
vii
DAFTAR GAMBAR
Gambar 2.1 Ilustrai Cara Kerja Web Scraper ......................................................................................2-2
Gambar 2.2 Basic Structure cURL PHP ..............................................................................................2-2
Gambar 2.3 Metodologi pengembangan perangkat lunak ( RUP ) ......................................................2-3
Gambar 3.1 Peta Analisis ....................................................................................................................3-3
Gambar 4.1 Proses Pencarian Barang di Google .................................................................................4-2
Gambar 4.2 Proses Pencarian Barang dari berbagai Toko Online .......................................................4-2
Gambar 4.4 Automate Navigation and Extraction ...............................................................................4-6
Gambar 4.5 Struktru Array ..................................................................................................................4-7
Gambar 4.3Gambaran Sistem yang Akan Dibangun ...........................................................................4-8
Gambar 4.6 Diagram Aktivitas Pendaftaran Toko Online ...................................................................4-9
Gambar 4.7 Diagram Aktivitas Pencarian Pengunjung .....................................................................4-10
Gambar 4.8 Diagram Aktivitas Pengurutan Harga ............................................................................4-11
Gambar 4.9 Diagram Use Case Aplikasi CRIS .................................................................................4-12
Gambar 4.10 Diagram Sequence Cari Barang ...................................................................................4-15
Gambar 4.11 Diagram Sequence Kelola Toko Online (Tambah Daftar Toko Online) ......................4-16
Gambar 4.12 Diagram Sequence Kelola Toko Online (Ubah Data Toko Online) .............................4-17
Gambar 4.13 Perancangan Arsitektur Perangkat Lunak ....................................................................4-18
Gambar 4.14 Digram Kelas Perancangan .........................................................................................4-20
Gambar 4.15 Antarmuka Halaman Utama ........................................................................................4-22
Gambar 4.16Antarmuka List barang .................................................................................................4-23
Gambar 4.17 AntarmukaForm Tambah Daftar Toko Online .............................................................4-23
Gambar 4.18Antarmuka Ubah Toko Online......................................................................................4-24
Gambar 4.19Antarmuka daftar Toko Online .....................................................................................4-24
Gambar 5.1 Implementasi Data ...........................................................................................................5-3
Gambar 5.2 Arsitektur .........................................................................................................................5-4
Gambar 5.3 Antarmuka Halaman Utama ............................................................................................5-5
Gambar 5.4 List barang .......................................................................................................................5-6
viii
DAFTAR LAMPIRAN
LAMPIRAN A ...................................................................................................................A-1
A.1 Observasi pencarian Barang Menggunakan Search Engine .....................................A-1
A.2 Observasi pencarian Barang Langsung Mengunjungi Website Penyedia Jasa .........A-2
LAMPIRAN B ................................................................................................................... B-1
B.1 Statistka Situs e-commerce familiar di tahun 2015 .................................................. B-1
B.2 Code Sumber Scraping dan DOM ............................................................................ B-2
B.3 Code Aplikasi Pencarian Barang di Berbagai Toko Online ..................................... B-5
ix
DAFTAR SIMBOL
Activity Diagram
No
Simbol
1.
Nama
Keterangan
Start state
Start state dengan tegas menunjukan dimulainya suatu
workflow pada sebuah activity diagram.
2.
Activity
Activity mengambarkan sebuah pekerjaan atau tugas dalam
workflow.
3.
Decision
Decision adalah suatu titik atau point pada activity diagram
yang
mengindikasikan
suatu
kondisi
dimana
ada
kemungkinan perbedaan transisi.
4.
End state
End state menggambarkan akhir atau terminal dari pada
sebuah activity diagram.
5.
State Transition
State transition menunjukan kegiatan apa berikutnya setelah
suatu kegiatan sebelumnya.
Diagram Use Case
No
1.
Simbol
Nama
Keterangan
Actor
Simbol yang merepresentasikan pengguna yang sedang
berinteraksi dengan usecase.
2.
Use Case
Deskripsi dari urutan aksi-aksi yang ditampilkan sistem yang
menghasilkan suatu hasil yang terukur bagi suatu aktor.
3.
Association
Simbol yang menghubungkan antara objek satu dengan
objek lainnya.
4.
Include
Simbol yang menspesifikasikan bahwa use case sumber
secara eksplisit.
5.
Extend
Simbol yang merepresentasikan bahwa use case target
memperluas perilaku dari us case sumber pada suatu titik
yang diberikan.
x
Sequence Diagram
No
Simbol
1.
Nama
Keterangan
Actor
Simbol yang menggambarkan pengguna yang sedang
berinteraksi dengan sistem.
:
2.
Boundary
Simbol yang menggambarkan sebuah penggambaran dari
form.
3.
Boundary : ViewLogin
Controller
Simbol yang menggambarkan penghubung antara boundary
dengan tabel atau entity.
4.
5.
Controller :
ControllerLogin
Entity : User
6.
Entity
Simbol yang menggambarkan hubungan kegiatan yang akan
dilakukan.
Object Message
Simbol yang menggambarkan pengiriman pesan
Return Message
Simbol yang menggambarkan pengiriman pesan kembali.
Flowchart
No
1
Simbol
Nama
Keterangan
Start/End
Simbol untuk permulaan (start) atau akhir (stop) dari suatu
kegiatan.
2
Process
Simbol yang menunjukkan pengolahan yang dilakukan oleh
rototyp.
3
Data
Simbol yang menyatakan proses input dan output tanpa
tergantung dengan jenis peralatannya.
4
Decision
Simbol pemilihan proses berdasarkan kondisi yang ada.
xi
Download