Mengambil content Website Lain dengan Teknik cURL PHP
Jurnalcode.com

Mengambil content Website Lain dengan Teknik cURL PHP

Mengambil content Website Lain dengan Teknik cURL PHP


Jurnalcode: Kali ini saya akan membuat tutorial bagaimana mengambil konten website lain dengan cara Curl , Namun sebelum kita memulai kita bahas dulu apa itu Php Curl dan apa fungsinya .

Apa itu PHP cURL ?

cURL merupakan singkatan dari Client URL. cURL adalah librari untuk mengtransfer data ke berbagai protokol, seperti : http, ftp, tftp dsb. Dengan menggunakan cURL, kita dapat mengirimkan HTTP request dengan menggunakan method GET atau POST.

Fungsi PHP cURL

Dengan menerapkan libari cURL, maka kita dapat mengambil bagian data tertentu untuk dimasukkan ke dalam website kita. Sistem cURL bekerja dengan melakukan request url dari sebuah web client ke web target (cURL Request), kemudian akan web target akan menerima bagian data yang diminta dan akan diterima oleh web client (cURL Receive).

Fungsi-fungsi dalam librari PHP cURL

Sebenarnya terdapat sekitar 28 method dalam librari PHP cURL yang dapat kita manfaatkan. Namun disini kita akan menjelaskan beberap diantaranya yang akan kita gunakan dalam contoh kasus nantinya, yaitu:

  • curl_init
  • curl_setopt
  • curl_exec
  • curl_close


#1. curl_init : Method dari curl_init digunakan untuk memulai sebuah session. Nilai balik (return value) dari method ini adalah resource cURL. Dalam method curl_init, kita dapat menggunakan parameter url. Berikut ini adalah contoh dari curl_init tanpa menggunakan parameter url dari sebuah website: t ini adalah curl_init yang mengandung parameter url:

<?php
$session = curl_init(); 
?>

 

Berikut ini curl_init yang mengandung parameter url:

<?php
$session = curl_init(http://jurnalcode.com/); 
?>

 

#2. curl_setopt : Method dari curl_setopt digunakan untuk memberikan parameter terhadap resource cURL.

Penulisan dari curl_setopt:

bool curl_setopt ( ch , option , value )

 

Dimana :

  • ch merupakan nilai dari curl_init()
  • option merupakan nilai opsi yang dimulai dengan sintaks CURLOPT_XXX.
  • value merupakan nilai yang dapat berupa : bool, string, array, stream resource. Untuk lebih jelasnya lihat tabel pada PHP MANUAL


Untuk bagian option, nilai opsi yang akan kita gunakan nantinya adalah :

  • CURLOPT_RETURNTRANSFER bertujuan untuk mengembalikan nilai respon dalam bentuk string. Jika kita menggunakan opsi ini, maka pada bagian valuenya harus diset TRUE atau 1.
  • CURLOPT_URL bertujuan untuk mengfetching sebuah website. Sehingga pada bagian value diset dengan sebuah alamat url website
<?php
$session = curl_init();
curl_setopt($session, CURLOPT_URL, "http://jurnalcode.com/"); //Setting option url
curl_setopt($session, CURLOPT_RETURNTRANSFER, 1); //setting option Return Transfer
?>

 

#3.curl_exec dan curl_close : Method curl_exec bertujuan untuk eksekusi session curl. Method ini akan mengembalikan nilai true jika session berhasil dieksekusi. Sedangkan curl_close untuk mengakhiri session.

<?php
$session = curl_init('"http://jurnalcode.com/");
$result = curl_exec($session); // will return true or false
curl_close($session);
print $result;
?>

 

Jika script tersebut dijalankan, maka akan tertampilkan website http://jurnalcode.com/

Baiklah saya akan langsung memberikan contoh penggunaan nya langsung . kali ini saya akan mengambil konten website http://pa-padang.go.id/category/all

 

 

Dari gambar di atas saya akan mengambil conten yang saya beri tanda kotak merah, mari kita mulai . langkah - langkahnya sebagai berikut :

#1. Cari tahu dulu class atau ID yang digunakan pada kotak yang saya beri tanda merah diatas dengan cara inspect elemen di browser seperti pada gambar :

 

 

dari gambar diatas saya sudah mendapatkan Class dari kolom tersebut nah sekarang mari kita buat sebuah php untuk mengambil content tersebut . silahkan ketikan script dibawah ini

<?php
	function bacaHTML($url){
	// inisialisasi CURL
	$data = curl_init();
	// setting CURL
	curl_setopt($data, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($data, CURLOPT_URL, $url);
	// menjalankan CURL untuk membaca isi file
	$hasil = curl_exec($data);
	curl_close($data);
	return $hasil;
	}
								
	$kodeHTML =  bacaHTML('http://pa-padang.go.id/category/all');
	$pecah = explode('<ul class="newsfeed_echo">', $kodeHTML);
	$pecahLagi = explode('</div>', $pecah[1]);
	echo"<span class='feed-link'>";
	echo $pecahLagi[0];
	echo "</span>";
?>

 

nah setelah selesai silahkan simpan dengan nama ambil_data.php atau lainya kemudia silahkan jalankan script tersebut melalui browser jika berhasil maka hasilnya akan seperti ini :

jika mengalami error silahkan periksa dulu apakan mod php_cURL sudah diaktifkan atau belum jika belum silahkan aktifkan dengan cara sebagai berikut :

masuk ke folder ini C:/xampp/php/ kemudian cari file php.ini lalu edit . lihat gambar di bawah :

 

 silahkan edit file dengan  tersebut notepad++ dan cari CTRL+F dengan kunci curl jika sudah ketemu silahkan edit

#extension=php_curl.dll

menjadi :

extension=php_curl.dll

silahkan hilangkan tanda # lalu save

 silahkan akses kembali script tadi melalui browser . sekian tutorial curl Php . salam coder

.

Ayo Komentar