Teknik Grabbing Dengan CURL [PHP]


Teknik Grabbing Dengan CURL [PHP]
Tekni Grabbing adalah teknik untuk mengambil teks atau secara umum obyek yang ada di suatu situs lain kemudian diletakkan ke web kita. maksud dari arti tersebut adalah mengambil sebagian informasi yang ada diwebsite lain untuk di letakan di posisi web lain. contohnya kita akan melakukan Grabbing pada website bmkg dan mengambil informasi Gempa terkini saja.
sebelum memulai teknik grabbing saya akan memberikan contoh simpel terlebih dahulu.pada teknik ini kita akan menggunakan CURL 
perhatikan script berikut ini :


disini saya membuat function bernama grabbing. sebelum menggunakan ini aktifkan terlebih curl .
pada baris 10 terdapat perintah  
echo grabbing('http://h4nk.blogspot.com');
maksudnya adalah melakukan atau menampilkan situs dari http://h4nk.blogspot.com untuk contoh dapat dilihat disini :

gampang kan tekniknya. nah saya ingin mengambil bagian artikel terbaru saja pada blog saya http://h4nk.blogspot.com tersebut. caranya adalah view source nya dengan ctrl + u maka akan terlihat bagian source dari css , js, html. 
begitu banyak source membuat kita bingung mau filter data yang mana saja. tapi jangan khawatir pada awal blog saya ada tulisan HOT NEWS »
saya akan melakukan pencarian dengan kata "HOT NEWS" tersebut pada view source
untuk dengan kata HOT NEWS hanya terdapat pada line 1153. oke kita akan melakukan pencarian code html pada postingan terbaru. langkah pertama saya akan mencari bagian judul terlebih dahulu. jika anda turun kebawan pada view source akan terlihat judul artikel terbaru saya tepatnya pada line 1180
<h3 class='post-title entry-title'>
<a href='http://h4nk.blogspot.com/2013/05/crack-hill-climb-racing-game-android.html'>Crack Hill Climb Racing Game [ANDROID]</a>
</h3>

pertama yang akan saya lakukan adalah melakukan filter tag sebelum judul tersebut yaitu tag <h3 dan saya nenambahkan perintah pada script tadi 
$filter = explode('<h3', $ambilhtml);
ya saya menggunakan function explode untuk melakukan pemecahan untuk string. dengan hasil tersebut akan menghasilkan beberapa array.
dan untuk melakukan filter di akhir saya memberikan code berikut 
$filterakhir = explode('</h3>', $filter[1]);
function explode kedua adalah melakukan batasan filter yang telah di hasilkan oleh filter pertama. Variabel $filter[1]; saya dapat pada urutan pencarian code tersebut pada view source. biar mempermudah kita melakukan pemecahan string.
 sebelumnya saya melakukan pencarian dengan key <h3 terdapat sebanyak 15 buah perintah tersebut. tapi Teknik Grabbing yang saya inginkan terdapat urutan pertama oleh karena itu array pada filter pertama saya memberikan nilai 1.
jika sudah saya akan melakukan tampilan setelah terjadi pemecahan 2 kali string yang kita lakukan sebelumnya
echo $filterakhir[1];
untuk script lengkap seperti ini :
untuk hasil dapat dilihat disini :
sampai disini mungkin paham maksud saya, oke kita lanjut pada target pertama adalah mengambil informasi gempa terkini di website BMKG.

targetnya adalah mengambil informasi pada kotak garis merah yang sudah saya tandai seperti gambar di atas.
Untuk langkah awal kita mulai intip view source nya.untuk mempermudahkan pencarian  saya menggunakan key : "16-Mei-13"
ternyata dengan menggunakan key tersebut hanya terdapat 1 buah. ini membuat kita mempermudah pencarian. untuk selanjutnya saya akan mencari tag sebelum tersebut. setelah saya lihat Tag sebelum 16-Mei-13 adalah "<td width="25%" valign="top">" dan tag untuk penutup adalah "</div></td>"
untuk script lengkapnya seperti ini :


untuk hasil dapat di lihat disini :
jika ingin mempercantiknya bisa memasukan CSS kedalam script itu sendiri.. silahkan di oprek2 masih banyak yang di butuhkan untuk grabbing tersebut seperti halnya info kurs Dollar pada web BCA dan mandiri. Sekian dulu artikel Teknik Grabbing Dengan CURL [PHP] semoga bermanfaat. Jika ada yang kurang Paham silahkan memberikan komentarnya. Thanks

22 Komentar

Berikan Komentar yang bermanfaat dan sehat.

  1. Gan misi ,. ane copas code yang agan post ini gak 1 pun yg kena,. mohon pencerahannya,. sorry ane masih bener" pemula..>_<

    BalasHapus
    Balasan
    1. CURL nya sudah di aktifkan ?

      Hapus
    2. nah sekalian Gan,. ane minta pencerahannya soal install dll nya itu,. :D ane pakai win 7 32 bit dengan web server wampp

      Hapus
    3. buka file php.ini lalu cari extension=php_curl.dll ada tanda ";" hapus tanda tersebut.
      save lalu restart apachenya

      Hapus
  2. nih tulisan keren banget five thumbs :)

    BalasHapus
  3. makasih gan.. thx for share .. (y)

    BalasHapus
  4. bagus tutorialnya. ngebantu banget,
    ijin tinggalin jejak juga ya min

    http://blog.microtrafh.com/

    blog share IT dan informasi

    BalasHapus
  5. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  6. makasih gan infonya, mohon bimbingannya kalau salah lagi praktek nih,

    BalasHapus
  7. extension=php_bz2.dll
    extension=php_curl.dll
    extension=php_mbstring.dll
    extension=php_exif.dll
    ;extension=php_fileinfo.dll
    extension=php_gd2.dll
    extension=php_gettext.dll
    ;extension=php_gmp.dll
    ;extension=php_intl.dll
    ;extension=php_imap.dll
    ;extension=php_interbase.dll
    ;extension=php_ldap.dll
    ;extension=php_mssql.dll
    ;extension=php_mbstring.dll
    ;extension=php_exif.dll ; Must be after mbstring as it depends on it
    extension=php_mysql.dll
    extension=php_mysqli.dll
    ;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client
    ;extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client

    saya sudah ilangkan tanda ; di curl.dll nya tpi masih g bisa tampil curl nya min mohon pencerahan nya :)

    BalasHapus
    Balasan
    1. cek dengan php info nya apakah sudah aktif curlnya

      Hapus
  8. mohon referensi info gan,, ada buku nya curl simple html domnya gak? atau kasetnya?? ntar aku beli punyanya meskipun bekas gan soalnya aku butuh banget referensi buat skripsi ane...

    BalasHapus
  9. Gan itu kan ngmbilnya per halaman, kalo ngambil konten langsung satu website gmn ya?

    BalasHapus
  10. gan kalau yang mau kita grab itu table yang server side processing bisa ngga ya? soalnya saya sudah coba tp hanya dapat table header nya saja

    BalasHapus
Posting Komentar
Lebih baru Lebih lama