General

Grabbing Konten Halaman Web dengan cURL PHP

By  | 

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, curl grab website, membuat grab php

5 Comments

  1. Sayyid Husein

    17 Januari 2015 at 06:24

    Script nya sederhana dan begitu Ane praktekin lsg, jreng3x langsung muncul. Tapi Ane masih bingung nih gan, parameter cara grab halaman nya. Awal grab dan akhir grab Ane belum faham nih, maklum masih bau kencur. Jadi begitu Ane mau coba grab halaman lain, pusing 7 keliling. Mhn pencerahannya Gan. Terima kasih

  2. music

    18 Maret 2015 at 12:47

    thx

  3. Uyesharemp3

    30 Mei 2016 at 16:56

    Misal kita menggrab sebuah situs builder contohwww. xtgem.com, nah kan bnyk tuh, caranya biar subdomain apa aja ke grab , bagaimana..

  4. bola voli

    7 Juni 2016 at 23:19

    nah agar cepat terindeks gimana gan web grab nya

  5. Ayunda

    1 September 2016 at 14:59

    Makasih ya kakak

Leave a Reply

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *