Grabbing Konten Halaman Web dengan cURL PHP

Web grabbing dapat diartikan sebagai sebuah upaya untuk mengambil konten data, informasi atau konten dari sebuah halaman web tertentu. Grabbing konten banyak dilakukan oleh blogger untuk mengambil data kurs nilai tukar dari halaman website Bank tertentu, jadwal penerbangan, kondisi cuaca, dsb untuk kemudian ditampilkan pada halaman blog mereka.

Salah satu cara untuk melakukan grabbing konten dari sebuah halaman website yaitu dengan menggunakan cURL PHP.  CURL (Client URL) merupakan sebuah library PHP untuk melakukan komunikasi data dengan menggunakan sintaks URL. Library ini dicitakan oleh Daniel Stenberg ini memungkinkan kita untuk terhubung dengan berbagai jenis server dan berbagai jenis protokol.  Jika anda menggunakan PHP 4.0.2 atau yang lebih baru, maka anda sudah bisa langsung menggunakan function curl, karena library ini sudah ter-include pada versi PHP tersebu.

PHP supports libcurl, a library created by Daniel Stenberg, that allows you to connect and communicate to many different types of servers with many different types of protocols. libcurl currently supports the http, https, ftp, gopher, telnet, dict, file, and ldap protocols. libcurl also supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading (this can also be done with PHP’s ftp extension), HTTP form based upload, proxies, cookies, and user+password authentication.  [php.net]

Menggunakan cURL untuk grabbing konten halaman web

Seperti sudah disebutkan sebelumnya, kita bisa menggunakan fungsi cURL untuk mengambil bagian konten tententu dari sebuah halaman web. Saya akan mencontohkan bagaimana untuk mengambil list Hot Thread dari website kaskus. Lihat pada gambar dibawah, hot thread ditampilkan pada home dengan alamat URL http://www.kaskus.co.id/

 

Skrip grabbing Hot Thread Kaskus dengan cURL PHP

<?php

//membuat fungsi grabbing dengan curl
function grabCURL($url){
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_HEADER, 0);
	$grab=curl_exec($ch);
	curl_close($ch);
	return $grab;
}

//membuat fungsi explode dengan multiple delimiter (pembatas)
function explodeX( $delimiters, $string ){
    return explode( chr( 1 ), str_replace( $delimiters, chr( 1 ), $string ) );
}

//grab halaman kaskus.co.id;
$hasil =grabCURL('https://www.kaskus.co.id/');

//pecah string hasil grabbing ke array
$pecah = explodeX(array('<section class="ht">', '</section>'), $hasil);
print_r ($pecah[1]);

?>

 

Jika sukses, maka list Hot Thread yang ada pada home kaskus berhasil anda grabbing/ fetching dan akan ditampilkan. Hasilnya akan seperti ini :

Untuk mempercantik, bisa di ulik-ulik lagi dan ditambahkan CSS. Contoh silahkan lihat pada DEMO dibawah

DEMO

 

cara nge grab situs lain

5 Comments

  1. Sayyid Husein 17 Januari 2015
  2. music 18 Maret 2015
  3. Uyesharemp3 30 Mei 2016
  4. bola voli 7 Juni 2016
  5. Ayunda 1 September 2016

Leave a Reply