Saturday, November 10, 2012

PHP : Grabbing Content Web

Grabbing dalam web programming adalah adalah sebuah istilah untuk mengambil suatu informasi pada area tertentu dari sebuah konten halaman web.



Yang umun dilakukan grabbing adalah kurs mata uang, perkiraan cuaca, harga tiket, headline berita terbaru dan semacamnya.

Pada umumnya tujuan grabbing adalah untuk membuat suatu website yang dimiliki menjadi lebih banyak konten yang relevan.

Pada posting ini di contohkan melakukan grabbing pada sebuah website yang menyediakan informasi perkiraan cuaca menggunakkan PHP. Website perkiraan cuaca yang akan di grabbing adalah cuaca.mirbig.net


1. Tahap pertama adalah mengakses alamat web yang akan di grabbing sebagai contoh adalah
http://cuaca.mirbig.net/id/ID/30/1650357_Kota+Bandung.

















2. Mempelajari struktur html dari halaman web yang akan di grabbing untuk mentukan area yang akan diambil.

Pada contoh posting ini area yang akan diambil adalah informasi cuaca kota Bandung.


3. Lakukan parsing teks untuk mengambil area yang di butuhkan, seperti contoh di bawah ini.
$grab =file_get_contents('http://cuaca.mirbig.net/id/ID/30/1650357_Kota+Bandung') ;

$start = '<h1 class="pL9" id="H1"> Cuaca. Kota Bandung </h1>';
$end   = '<h3 class="mapTitle fleft"> Kota Bandung on Google Maps</h3>';

$startPosisition = strpos($grab, $start);
$endPosisition   = strpos($grab, $end); 

$longText = $endPosisition - $startPosisition;

$result = substr($grab, $startPosisition, $longText);
 
$result = $result;

echo $result;
4. Hasil dari grabing adalah sebagai berikut.



Berikut ini Penjelasan dari skrip di atas :

$grab = file_get_contents('http://cuaca.mirbig.net/id/ID/30/1650357_Kota+Bandung') ;
Sebuah function php bernama file_get_contents untuk mengakses halaman website yang akan di grabing.

$start = '<h1class="pL9" id="H1"> Cuaca. Kota Bandung </h1>';
Adalah sebuah tag bersifat unik yang dapat menjadi tanda sebagai awal untuk mengambil suatu area konten.

$end = '<h3 class="mapTitle fleft"> Kota Bandung on Google Maps</h3>';
Adalah sebuah tag bersifat unik yang dapat menjadi tanda sebagai akhir pengambilan suatu area konten.

$startPosisition = strpos($grab, $start);
Adalah untuk mengambil posisi awal berdasarkan tanda yang sudah di tentukan.

$endPosisition   = strpos($grab, $end);
Adalah untuk mengambil posisi akhir berdasarkan tanda yang sudah di tentukan.

$longText = $endPosisition - $startPosisition;
Adalah untuk menghitung jumlah karakter yang akan di ambil.

$result = substr($grab, $startPosisition, $longText);
sebuah fungsi php substr untuk mengambil suatu area dari konten halaman web.

echo $result;
Adalah untuk menampilkan hasil grabbing.

15 comments: