Cara Mengambil Gambar / Scraping Dari Suatu Website Menggunakan Html Dom Pada PHP

Calon Pengusaha

01 Feb 2019, pukul 17:10

Follow
275x dilihat · 3x dibagikan · 0 komentar

Cara Mengambil Gambar / Scraping Dari Suatu Website Menggunakan Html Dom Pada PHP

Dalam dunia web programing, kita mengenal beberapa komponen penyusun sebuah website Seperti HTML (Hyper Text Markup Language) yang berfungsi untuk membentuk kerangka sebuah website, kita kenal juga CSS(Cascading Style Sheets) yakni bahasa yang digunakan memberikan tampilan grafis pada kerangka html yang telah dibuat, menggambarkan bagaimana setiap elemen html akan terlihat di layar, seperti warna latar belakang, ukuran, jenis huruf, warna huruf, dsb. Terakhir, kita mengenal Javascript dan PHP yang mana keduanya merupakan bahasa pemrograman yang digunakan pada pengembangan aplikasi web yang membuat halaman web menjadi ”hidup”, dalam artian input-proses-output terjadi disini.

Javascript adalah bahasa pemrograman yang sifatnya lebih kepada client side atau bekerja pada sisi client yaitu browser yang anda gunakan. Penggunaan javascript juga lebih banyak digunakan untuk memodifikasi halaman website agar lebih interaktif dengan penggunanya.

Sedangkan, PHP adalah bahasa pemrograman web bersifat server-side-programming, artinya semua proses atau eksekusi kode php dilakukan di web server, dan client hanya akan menerima hasil(output) dari proses tersebut.  PHP digunakan untuk membuat web dinamis yang membutuhkan manajemen data, seperti database, upload file dan masih banyak lagi.

Javascript dapat membuat halaman web menjadi interaktif karena javascript dapat berinteraksi langsung dengan dokumen html, inilah yang kita sebut sebagai “manipulasi HTML DOM” yang akan kita bahas sekarang.

Apa itu DOM?


DOM(Document Object Model) adalah model data standar. DOM adalah cara javascript melihat suatu halaman html. DOM adalah sebuah platform dan interface yang memperbolehkan pengaksesan dan perubahan pada konten, struktur, dan style pada sebuah dokumen oleh program dan  script. Istilah HTML DOM mengacu kepada dokumen html. Kasusnya disini ialah konten, struktur, dan style pada dokumen html dapat diakses dan dirubah dengan menggunakan sintaks javascript.

Pada tutorial kali ini, kita akan mencoba melakukan scrapping menggunakan HtmlDOM extention pada bahasa pemrograman PHP. Cara kerja dari metode ini adalah dengan membaca full page source dari sebuah halaman website yang mana setiap element akan di anggap sebagai object dan elemen yang dialamannya terdapat element lagi dan begitu serusnya juga di anggap sebagai object lalu akan dilakukan beberapa seleksi menggunakan Regex Expression yang sudah menjadi satu pada HTML DOM extention di PHP.

Pada contoh kali ini, Jenis scrapping yang akan kita lakukan yaitu mencraping gambar pada sebuah website. Sebagai Contoh kita akan melakukan scraping pada Halaman Website ini https://dikertas.com/pendidikan-komunikasi/cara-menghitung-luas-lingkaran-menggunakan-jari-jari-lingkaran yang gambarnya akan kita coba dapatkan.

Sebelum memulai tutorial ini, pastikan komputer / laptop anda telah terinstall Xampp Web Server dan Juga Texteditor seperti Notepad+, Sublime, Visual Code Studia, dll. Berikut cara untuk melakukan mendapatkan gambar dari sebuah website menggunakan metode image scraping dengan bahasa pemrograman PHP.

Jalankan Apache Server Pada Xamp

Karena kita akan menggunakan bahasa pemrograman PHP, jadi kita mebutuhkan apache webserver untuk menjalankan php script atau source code HTML DOM yang antinya akan kita buat. Sebenarnya php dapat digunakan dalam mode CLI ( Command Line Interface ) namun karena tampilannya yang kurang enak dipandang serta metode penggunaannya yang lumayan rumit, jadi disarankan untuk menghindari metode ini walaupun dari segi pemrosesan dalam jauh lebih cepat ketimbang menggunakan apache web server.

Menuliskan Source Code HTML DOM Menggunakan Software Text Editor

Bukalah software text editor yang anda miliki seperti sublime, notepad++, Atom dan lain sebagainya lalu buatlah sebuah file yang bernama web-scraping.php dan simpanlah didalam folder xampp/htdocs/image-scrap/. Jika sudah dibuat, masukan sorce code berikut kedalam file PHP yang telah anda buat.

<?php 

$html = file_get_contents("http://example.com");
//Create a new DOM document
$dom = new DOMDocument;
 
//Parse the HTML. The @ is used to suppress any parsing errors
//that will be thrown if the $html string isn\'t valid XHTML.
@$dom->loadHTML($html);
 
//Get all links. You could also use any other tag name here,
//like \'img\' or \'table\', to extract other tags.
$links = $dom->getElementsByTagName(\'img\');
 
//Iterate over the extracted links and display their URLs
foreach ($links as $link){
    //Extract and show the "href" attribute.
    echo $link->nodeValue;
    echo getAttribute(\'src\');
}

?>

Ganti Http://example.com dengan website yang akan kita scraping. Sebagai contoh, kita akan menggunakan alamat situs https://dikertas.com/pendidikan-komunikasi/cara-menghitung-luas-lingkaran-menggunakan-jari-jari-lingkaran

Ganti $dom->getElementsByTagName(\'img\') dengan $dom->getElementsByTagName( nama element yang ingin di dapatkan ) . Karena pada tutorial kali ini kita akan mencoba mendapatkan gambar dari sebuah website, maka nama element yang kita masukkan adalah IMG.

Ganti getAttribute(\'src\') dengan getAttribute( nama attribute didalam element ). Karena pada contoh kali ini kita kan mencoba mendapatkan gambar. Jadi attribute yang akan kita dapatkan yaitu SRC, karena url gambar terdapat di dalam attribute src.

Jika sudah, Simpanlah source code tersebut dengan memberikannya nama web-scraping.php dan simpanlah didalam folder xampp/htdocs/image-scrap/

Jalankan Script Pada Browser

Bukalah Browser dan pada address bar masukkan link : http://localhost/web-scrap/web-scraping.php untuk melihat hasil dari scraping yang anda dapatkan.

* Penting

Beberapa website adayang tidak bisa dilakukan web scraping karena sistem kemanan mereka yang mencegah hal tersebut terjadi. Jadi misalkan hal tersebut terjadi pada anda, silahkan anda mencoba situs lainnya yang tidak memiliki proteksi lebih.

BAGIKAN

REAKSI PEMBACA


0 like

0 Love

0 Yeay

0 Wow

0 Sad

0 Angry

PANDUAN SERUPA

Cara Menampilkan File Yang Terhidden / Tersembunyi ...

Sering kali kita menemui beberapa file pada komputer maupun flashdisk kita ada yang hilang tanpa ...

Cara Membuat Ribuan Sub Email Dalam Satu ...

Email adalah sebuah layanan surat electonik yang berbasis cloud untuk mengirim dan menerima pesan berupa ...

Cara menginstall nox player pada windows 7 ...

nox player adalah sebuah sofware ( emulator android ) yang memungkinkan orang dapat menjalankan aplikasi ...

Tentang Kami · Hubungi Kami · Syarat & Ketentuan

F.A.Q · Panduan Menulis