Web Scraping with R
Untuk membuat web scraping menggunakan Software R studio adapun langkah-langkahnya sebagai berikut:
STEP 1
Pertama yang dilakukan adalah menginstal Packages “rvest”
#Install Packages
library(“rvest”)
Kemudian setelah berhasil di instal berikutnya membaca packages yang aktif menggunakan syntax:
search()
melihat isi packages nomo 2 pada “rvest” menggunakan syntax:
ls(2)
STEP 2
Pada langkah kedua yaitu memasukan data. data yang penulis pakai adalah data dari Internet Movie Database; http://www.imdb.com/search/title?count=100&release_date=2018,2018&title_type=feature"
#Manggil data dari web
url <- “http://www.imdb.com/search/title?count=100&release_date=2018,2018&title_type=feature"
url
#Membaca Web
webpage <- read_html(url)
webpage
STEP 3
Nah setelah data sudah berhasil dimasukan, kemudian penulis akan melihat ranking atau peringkat movie dengan menggunakan nilai pecahan.
rank_data_html <- html_nodes(webpage,’.text-primary’)
selanjutnya mengonverensi data peringkat menggunakan teks:
rank_data <- html_text(rank_data_html)
rank_data
Mari kita lihat peringkat movie terbaik
head(rank_data)
STEP 4
Kali ini penulis ingin Mengetahui Rangkin Dengan Numerik dengan menggunakan syntax:
rank_data<-as.numeric(rank_data)
rank_data
Let’s have another look at the rankings
head(rank_data)
STEP 5
Using CSS selectors to scrap the title section
title_data_html <- html_nodes(webpage,’.lister-item-header a’)
Mengubah data judul menjadi teks
title_data <- html_text (title_data_html)
title_data
Mari kita lihat judulnya
head (title_data)
STEP 6
Pada step ke enam penulis ingin mengatahui intisari dari film yang ada yaitu menggunakan syntax:
description_data_html <- html_nodes(webpage,’.ratings-bar+ .text-muted’)
Mengubah data uraian menjadi teks:
description_data <- html_text(description_data_html)
description_data
Mari kita lihat pada deskripsi data
kepala (description_data)
STEP 7
Selanjutnya penulis ingin melihat durasi wakti film, menggunakan syntax:
runtime_data_html <- html_nodes(webpage,’.text-muted .runtime’)
Mengonversi data runtime ke teks
runtime_data <- html_text (runtime_data_html)
Mari kita lihat runtime
head (runtime_data)
#proses removing
Menghapus menit dan mengubahnya menjadi numerik
runtime_data <-gsub (“min”, “”, runtime_data)
runtime_data <-as.numeric (runtime_data)
Mari kita lihat lagi data runtime
head (runtime_data)
STEP 8
Membuat syntax untuk melihat genre film:
Filmgengen__ata_html <- html_nodes (halaman web, ‘. Genre’)
genre_data_html <- html_nodes (halaman web, ‘. genre’)
#Mengonversi data genre ke teks
genre_data <- html_text (genre_data_html)
kepala (genre_data)
#proses removing
#Mengonversi setiap genre dari teks ke faktor
genre_data <-as.factor (genre_data)
# Mari kita lihat lagi data genre
kepala (genre_data)
STEP 9
Melihat rating yang diperoleh film
rating_data_html <- html_nodes (halaman web, ‘. ratings-imdb-rating strong’)
Mengonversi data peringkat ke teks
rating_data <- html_text (rating_data_html)
kepala (rating_data)
Data-Preprocessing: mengubah peringkat menjadi numerik
rating_data <-as.numeric (rating_data)
Mari kita lihat lagi data peringkat
kepala (rating_data)
STEP 10
Menggabungkan semua daftar untuk membentuk bingkai data:
movies_df <-data.frame (Peringkat = rank_data, Judul = title_data,
Deskripsi = description_data, Runtime = runtime_data,
Genre = genre_data, Rating = rating_data,
Met SofaScore = metegle_data, Votes = votes_data, Gross_Earning_in_Mil = gross_data,
Direktur = directors_data, Aktor = actor_data)
Struktur kerangka data
str (movies_df)
perpustakaan (‘ggplot2’)
qplot (data = movies_df, Runtime, fill = Genre, bins = 30)