Webscraping dan Visualisasi Data Shopee
Melakukan web scraping dengan data miner dan memvisualisasikannya
Hai teman — teman!
Kalian pasti pernah belanja online kan? Seberapa sering kalian belanja online?
Di zaman sekarang ini memang rata — rata orang lebih menyukai berbelanja lewat online. Selain tidak perlu keluar rumah, belanja online juga memiliki banyak pilihan dari berbagai macam toko.
Shopee merupakan salah satu platform belanja online yang banyak digunakan. Nah kali ini kita akan melakukan web scraping pada shopee.
Sebelumnya, apakah kalian tau apa itu web scraping?
Berdasarkan Wikipedia, Web scraping, web harvesting, web data extraction merupakan kegiatan yang dilakukan untuk mengambil data tertentu secara semi-terstruktur dari sebuah halaman website.
Ada berbagai cara untuk melakukan web scraping. Kali ini kita akan menggunakan data miner sebagai tools untuk melakukan web scraping. Untuk menambahkan data miner extension pada chrome, cari “data miner extension chrome” pada pencarian google atau bisa juga klik link berikut. Kemudian klik “tambahkan pada chrome”. Jika berhasil icon data miner akan muncul pada ujung chrome seperti gambar berikut.
Lalu buka website shopee atau kalian bisa klik link https://shopee.co.id/. Kali ini kita akan mengambil data produk sneakers yang terlaris pada shopee.
Kemudian buka data miner dengan mengklik icon data miner tersebut sehingga akan muncul tampilan seperti ini.
Kemudian klik “New Recipe” untuk melakukan web scraping. Sehingga akan muncul tampilan seperti berikut.
Pada menu “start” terdapat 2 pilihan halaman yaitu list page dan detail page. Jika kita memilih list page artinya kita akan men-scraping beberapa baris dari halaman website tersebut sedangkan jika kita memilih detail page artinya kita akan men-scraping detail dari halaman website tersebut contohnya adalah men-scraping detail suatu produk. Kali ini kita akan memilih tipe halaman list page.
Selanjutnya klik “Rows” pada data miner.
Kemudian klik “Find” dan arahkan kursor ke halaman shopee, sehingga akan muncul warna oranye. Pilih 1 area pada halaman shopee yang memuat merk produk, harga, asal kota. Jika sudah menemukan area yang memuat keseluruhan, klik shift pada keyboard.
Jika berhasil maka akan muncul kotak berwarna oranye pada area yang dipilih tadi dan muncul menu seperti gambar berikut.
Kemudian beri centang pada “Element’s Classes” sehingga secara otomatis seluruh produk pada halaman tersebut akan terpilih.
Pastikan seluruh produk pada halaman tersebut telah terpilih ditandai dengan kotak berwarna hijau. Setelah itu klik “Confirm”.
Langkah selanjutnya klik “Cols”.
Untuk kolom pertama kita akan isi dengan “Merk Sepatu” dengan jenis ekstrasi “text”.
Lalu klik “Find” dan arahkan ke halaman shopee yang memuat merk sepatu. Jika sudah menemukan area yang memuat merk sepatu, klik shift. Lalu akan muncul tampilan berikut.
Terdapat 3 Element’s Classes, yaitu _1Nol8_, _2xHE6C, dan _1co5xN. Jika kita memilih Element’s Classes _1Nol8_ maka seluruh merk sepatu pada halaman tersebut akan terpilih secara otomatis namun jika kita memilih Element’s Classes _2xHE6C, dan _1co5xN terdapat beberapa merk sepatu yang tidak terpilih. Sehingga beri centang pada Element’s Classes _1Nol8_.
Pastikan seluruh merk produk terpilih, setelah itu klik “Confirm”.
Kemudian kita juga akan membuat kolom untuk harga, asal kota, dan jumlah terjual. Untuk membuat kolom baru klik “Add New Column”. Dengan cara yang sama dalam membuat kolom merk sepatu, kalian bisa membuat kolom harga, asal kota dan jumlah terjual.
Berikutnya klik menu “Nav” atau navigasi. Navigasi ini digunakan untuk menemukan tombol menuju halaman selanjutnya.
Kemudian klik “Find” dan arahkan kursor pada tombol next pada halaman shopee.
Setelah menemukan tombol next, klik shift pada keyboard. Kemudian akan muncul pilihan Element’s Classes.
Terdapat 2 Element’s Classes yaitu shopee-icon-button dan shopee-icon-button-right. Jika mencetang shopee-icon-button maka tombol previous dan next akan terpilih, namun jika mencetang shopee-icon-button-right maka hanya tombol next yang terpilih. oleh karena itu kita beri centang pada Element’s Classes shopee-icon-button-right.
Lalu klik “Confirm”. Setelah itu kita akan melakukan tes navigasi untuk menguji apakah navigasi kita telah berhasil atau belum. Jika berhasil, maka halaman shopee akan berpindah.
Nah, halaman shopee kita telah berpindah ke halaman selanjutnya, artinya navigasi kita telah berhasil. Pada menu Actions dan JS, kita tidak perlu mengubah apapun sehingga kita dapat melewatinya. Berikutnya, klik menu save untuk menyimpan data hasil scraping kita.
Kita dapat memberi nama hasil scraping kita dengan mengisi kolom Recipe Name. Misal kitaberi nama untuk hasil scraping kita “Shopee Sneakers”. Selain itu kita juga dapat menambahkan deskripsi dari hasil scraping. Ini merupakan optional, kalian bisa mengosongkannya.
Setelah selesai, klik “Save”. Kemudian klik ”Run Recipe” untuk menampilkan data hasil scraping kita. Sehingga akan muncul tampilan data miner.
Selanjutnya kita akan melakukan pagination, yaitu untuk melakukan scraping pada halaman berikutnya. Untuk melakukan pagination klik “Next Page”. Pada pagination terdapat waktu tunggu untuk ke halaman selanjutnya dan jumlah halaman yang akan dilakukan scraping. Waktu tunggu harus diisi, hal ini agar kita tidak terblock oleh shopee. Lalu kita akan menentukkan berapa halaman yang akan di scraping, misal kita akan melakukan scraping 3 halaman pada shopee. Lalu klik “Start Pagination”.
Setelah berhasil, klik close. Lalu kita dapat mengunduh data hasil scraping dalam bentuk xlsx, csv atau salin dalam clipboard dengan mengklik “Download”. Kali ini kita akan mengunduh data, dalam bentuk csv.
Nah, kita telah berhasil melakukan scraping pada shopee.
Setelah melakukan scraping, berikutnya kita akan memvisualisasikan data hasil scraping. Sebelum memvisualisasikan data, kita akan merapihkan data hasil scraping terlebih dahulu dengan menghapus kata Terjual/Bulan dan mengubah RB menjadi angka ribuan. Selain itu kita dapat menambahkan kolom baru, misalnya menambah kolom toko yang berisi keterangan apakah toko tersebut merupakan seller, star seller, atau shopee mall.
Terdapat beberapa software yang dapat digunakan untuk memvisualisasikan data seperti excel, R, tableau, python dan lain sebagainya. Kali ini kita akan memvisualisasikan data hasil scraping dengan python. Untuk melakukan visualisasi data pada python digunakan tools yaitu jupyter notebook. Untuk membuka jupyter notebook, buat folder baru, misal dengan nama “BIML” pada Local Disk(D). Kemudian klik alamat folder dan ketikkan “cmd”.
Maka akan muncul command prompt. Lalu ketikkan “jupyter notebook”, kemudian enter.
Secara otomatis jupyter notebook akan terbuka pada chrome. Dengan ini koding pada jupyter notebook akan berada dalam folder BIML.
Lalu simpan file hasil scraping yang telah dirapihkan dalam folder BIML. Langkah selanjutnya adalah klik ”New” lalu pilih “Python 3” pada halaman jupyter notebook.
Maka kan muncul tampilan seperti berikut.
Untuk melakukan visualisasi data dibutuhkan beberapa package. Untuk membaca data dibutuhkan package pandas, untuk memvisualisasi data digunakan package seaborn dan matplotlib. Kemudian import ketiga package tersebut dengan kode,
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
Lalu import file hasil scraping dengan menggunakan kode,
data=pd.read_excel(“dataminer (2).xlsx”)
data.head()
Sehingga didapat hasil,
Berikutnya kita akan membuat grafik frekuensi. Sebelum membuat grafik frekuensi kita akan menghitung frekuensi kemunculan asal kota dalam data menggunakan .value_count()
data[“Asal Kota”].value_counts()
Sehingga didapat hasil,
Untuk membuat grafik frekuensi digunakan perintah,
data[“Asal Kota”].value_counts().plot(kind=”bar”, color=”g”)
plt.title(“Grafik Asal Kota Penjual di Shopee”)
plt.xlabel(“Kab/Kota”)
plt.ylabel(“Frekuensi”)
plt.show()
Maka diperoleh grafik,
Dari grafik diatas dapat diketahui bahwa asal kota penjual sneakers paling banyak adalah berasal dari Kab.Bogor dan paling sedikit yaitu Kota Medan. Selanjutnya kita akan melakukan visualisasi data yang kedua yaitu grafik dengan jenis swarm dengan perintah
sns.catplot(x=”Toko”, y=”Jumlah Terjual”, hue=”Asal Kota”, kind=”swarm”, data=data);
didapat hasil grafik,
Dari grafik diatas dapat diketahui bahwa, toko dengan seller biasa lebih banyak dari toko star seller dan shopee mall. Banyak seller biasa yang memiliki tingkat penjualan yang tinggi dibandingkan dengan toko star seller maupun shopee mall. Rata — rata seller biasa, berasal dari Kab.Bogor. Hal ini terlihat dari banyaknya titik hijau yang menyimbolkan Kab. Bogor.
Selain 2 grafik diatas, masih banyak grafik lainnya yang terdapat pada python. Kalian bisa mencoba memvisualisasikan data tersebut dengan grafik lainnya. Semoga bermanfaat!
Referensi :