Home > Menengah > Web Development > Tutorial PHP > Mengambil Content Website Lain dengan File_get_contents dan RegEx

.

10 Komentar Untuk Artikel Ini BYAdmin Ilmuwebsite

Seorang staff ilmuwebsite dahulu kala pernah bertanya kepada penulis, “Bagaimana sih caranya mengambil content yang ada pada website lain untuk ditampilkan di website kita?”. Nah saat ini mungkin anda juga bertanya hal yang sama?? Sehingga jumlah yang bertanya kepada penulis dengan pertanyaan yang sama adalah semua orang + anda + staff ilmuwebsite tersebut. :D. Oke lantas sekarang setelah anda bertanya lalu bagaimana solusinya, bagaimana anda dapat melakukan itu? Pada tutorial php kali ini penulis akan jelaskan itu semua.

Yang patut anda ketahui sebelum melakukan hal ini adalah, anda harus mengetahui terlebih dahulu dasar-dasar dari Regular Expression, tidak wajib untuk hafal, tapi mutlak bagi anda untuk mengerti setidaknya dasar dari regular expression.

Setelah persyaratan terpenuhi, penulis membaginya menjadi beberapa step, analogi pengambilan content di situs lain kemudian di letakkan di website anda adalah sama seperti ketika seseorang yang membuka satu situs, kemudian mengcopykan sebagian isinya dan mempastekan di situsnya, sehingga dalam pseudo code-nya …

buka websitenya …
pilih content yang ingin di ambil
copy kan content yang diambil
lalu tampilkan content yang diambil tersebut pada website anda

untuk melakukan hal ini kita memanfaatkan regular expression dan fungsi file_get_contents yang sudah di sediakan pada php

Oke, penulis mengambil contoh kasus, bagaimana menampilkan jadwal sholat hari ini yang jadwalnya itu di ambil dari website http://www.pkpu.or.id/adzan.php?id=83.


Penulis akan mengambil jadwal hari ini saja, yang mana barisnya ini di wakili oleh tanda highlight berwarna abu dengan tulisan putih didalamnya? dan juga kita akan ambil tag head milik table jadwal sholat dan jadwal sholat hari ini …

dalam view source nya …

<tr align=”center”>
<td><b>Date</b></td><td><b>Imsyak</b></td><td><b>Fajr</b></td><td><b>Syuruq</b></td><td><b>Dzuhr</b></td><td><b>Asr</b></td><td><b>Maghrib</b></td><td><b>Isha</b></td></tr>

dan

<tr align=”center”><td><b>11</b></td><td>04:30:51</td><td>04:37:12</td><td>05:57:26</td><td>12:07:14</td><td>15:23:21</td><td>18:16:57</td><td>19:28:40</td></tr>

script lengkapnya adalah :

<?php
$text = file_get_contents(“http://www.pkpu.or.id/adzan.php?id=83”);
echo “<table border=’1′>”;
preg_match_all(‘#<trsclass=”table_header(.+?)>(.+?)</tr>#siu’, $text, $result);
for ($x = 0, $jumlah = count($result[0]); $x < $jumlah; $x++) {
echo $result[2][$x] . “n”;
}
echo “</tr><tr>”;
preg_match_all(‘#<trsclass=”table_highlight(.+?)>(.+?)</tr>#siu’, $text, $result);
for ($x = 0, $jumlah = count($result[0]); $x < $jumlah; $x++) {
echo $result[2][$x] . “n”;
}
echo “</tr></table>”;
?>

penulis akan jelaskan sedikit cara kerja script ini …

pertama semua isi halamannya dengan file_get_contents
$text = file_get_contents(“http://www.pkpu.or.id/adzan.php?id=83”);

lalu, kita cocokkan dengan pattern atau pola dari header table yang akan di ambil …
preg_match_all(‘#<trsclass=”table_header(.+?)>(.+?)</tr>#siu’, $text, $result);

kita lihat polanya …
#<trsclass=”table_header(.+?)>(.+?)</tr>#siu
ini berarti mulai dari tag <tr> yang memilikitable_header … sampai tag </tr> penutup

sehingga jika ada banyak data … nanti yang di ambil cuma


<tr align=”center”>
<td><b>Date</b></td><td><b>Imsyak</b></td><td><b>Fajr</b></td><td><b>Syuruq</b></td><td><b>Dzuhr</b></td><td><b>Asr</b></td><td><b>Maghrib</b></td><td><b>Isha</b></td></tr>

sedangkan pengulangan di bawah ini cuma untuk mewaspadai jika terdapat banyak sekali <tr> dengan class yang sama …? dan sekaligus pengulangan ini digunakan untuk menampilkan hasil dari pengambilan datanya …

for ($x = 0, $jumlah = count($result[0]); $x < $jumlah; $x++) {
echo $result[2][$x] . “n”;
}

script yang di bawahnya sama saja dengan yang penulis jelaskan sebelumnya. Dan hasilnya nanti akhirnya lihat disini . Dan hasilnya itu akan terus berubah sesuai dengan pergantian hari. Dan anda dapat mengimplementasikan teknik ini untuk hal yang lain yang tentunya sangat bermanfaat. Contoh Jadwal Sholat yang contentnya di ambil dari PKPU http://www.ilmuwebsite.com/sholu.php untuk scriptnya http://www.ilmuwebsite.com/sholu.php.txt

silahkan? script lengkapnya download di sini

Selamat mencoba.

DVD Video Tutorial : Kursus Web Development Komplit Bangun 5 Project Aplikasi Website - Membuat CMS Sendiri Dari Nol, Blog, Portal Berita, Ecommerce, Web Komunitas dengan CodeIgniter 3 JQuery AJAX Bootstrap

Video Tutorial Kursus Web Development Komplit Bangun 5 Project Website ini merupakan ‘penunjuk arah’ agar Anda yang sedang maupun baru akan terjun ke dalam dunia web development yang lebih mendalam memiliki peta perjalanan pembelajaran yang lebih terarah menuju web developer professional. (Disertai pembelajaran dasar HTML CSS, JQuery, PHP & MySQL, CodeIgniter) Dibuat oleh praktisi yang memiliki pengalaman lebih dari 10 tahun di bidang web development (Pemesanan bisa SMS/WA ke 0813 1167 5785, atau bisa pesan secara online di sini)



10 Response untuk Artikel Ini

  1. […] Lihat Berita Seluruhnya di Tutorial Belajar Website PHP MySQL ASP.Net Photoshop Coreldraw Flash Template […]


  2. Pasa Firaya, ST

    wah infonya mantap dan bermanfaat sekali.
    Sukses bro…


  3. Joko

    Wah susah ya scriptnya ribet banget, saya ga paham neh…ada cara yang lebih mudah ga?


  4. uswahshop.com

    baguss


  5. Endang Kurniawan

    Oke juga tu… tapi kalo kita pengen ngambil feednya g mana ya caranya… kayak blogroll di Tutorial Website
    Gw make blogroll tapi gw pengen nampilin di postingan… Ada ga ya scriptnya…. Thank’s…


  6. Jatrasmara

    kalau buka suatu website pake firefox cb liat di url atas nya, lihat sebelah kanan, ada icon kecil feed


  7. Kuro!

    mas, kalo mau ambil konten berulang gmn?
    jadi modelnya kayak web grabber gtu
    tapi kita tentukan apa yang mau diambil

    misal saja. di kasus di atas, kita mau ambil
    nilai2 waktu solat tp di bbrp kota? bs jadi infonya
    ada di bbrp halamn. apakah mungkin


  8. bau badan

    sip bagus bos , referensi utama saya


  9. inzacky

    Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /xxx/xxx/coba.php on line 8

    artinya apa tuh..??
    gmn solusinya ya


  10. Archiem

    Mas gimana caranya mengetahui ‘source code’ dari sebuah halaman website…maafnya msih gaptek.,he


eXTReMe Tracker