Mendapatkan Feed Situs lain Via RSS Reader SimplePie

Studi Kasus : Mendapatkan Feed situs lain dengan RSS Reader SimplePie, menampilkannya, dan menyimpannya ke dalam database.
Kebutuhan : SimplePie library, download here. Webserver Packages, already installed.

RSS (Really Simple Syndication) adalah format berbasis XML yang digunakan untuk sharing dan delivering konten dari web yang pada umumnya diupdate secara regular. Sedangkan istilah ‘feed‘ mengacu pada output dari RSS yang dapat dibaca dengan RSS Feed Reader (pembaca rss feed).SimplePie merupakan RSS Feed Reader/Parser yang cukup terkenal (dan paling saya sukai tentunya), cara kerja dari RSS Feed Parser semacam ini adalah dengan membaca format XML yang terdapat dalam RSS Feed yang kita tentukan sendiri.

Ok, langsung praktik saja.

Step 1 : Persiapkan Database

  1. Buat database dengan nama db_tutorial
  2. Siapkan tabel dengan nama tb_rss, dengan struktur tabel seperti gambar dibawah ini.
    Table Structure
  3. Done with the database!

Step 2 : Persiapkan Folder Kerja

  1. Buat folder baru di document root anda dengan nama folder rss
  2. Buat sebuah folder didalam folder rss dengan nama cache (…/rss/cache)
  3. Copy file SimplePie.inc (hasil download – yang berada dalam file ZIP simplePie) ke dalam folder rss.

Step 3 : Membuat Koneksi ke database

  1. Buat script untuk melakukan koneksi ke database, yaitu dengan ketikkan script dibawah ini,
    <?php
    //file name : connect.php
    //author : littleflow3r
    $host = "localhost";
    $user = "root"; //sesuaikan dengan setting mysql
    $pass = ""; //
    sesuaikan dengan setting mysql
    $dbName = "db_tutorial";
    mysql_connect($host, $user, $pass);
    mysql_select_db($dbName)
    or die ("Connect Failed !! : ".mysql_error());
    ?>
  2. Simpan dalam folder rss dengan nama connect.php

Step 4 : Inisialisasi SimplePie

  1. Ketikkan script dibawah ini,
    <?php
    //file name : initRSS.php
    //author : littleflow3r
    require_once 'simplepie.inc';
    //initialize simplePie
    $feed = new SimplePie('http://localhost/websmsmasking/feed/rss');
    $feed->set_cache_location('../rss/cache/');
    $feed->set_feed_url('http://localhost/websmsmasking/feed/rss');
    $feed->init();
    $feed->handle_content_type();
    ?>
  2. Simpan dalam folder rss dengan nama initRSS.php
  3. Keterangan : Cara kerja dari SimplePie RSS Parser adalah dengan membaca format XML yang terdapat dalam RSS Feed. Code diatas digunakan untuk menginisialisasi SimplePie, dengan memasukkan alamat dari rss kita [baris 06 dan baris 08]. Sebagai contoh, saya memakai sample alamat rss adalah localhost/websmsmasking/feed/rss –> feed dari aplikasi lokal saya. Anda bisa mengganti alamat ini dengan alamat rssfeed yang anda inginkan, namun untuk mendapatkan feed dari situs online, anda juga harus menjalankan program secara online (terhubung ke internet, karena simplepie akan mengakses alamat dari feed tersebut secara langsung.)

Step 5 : Menampilkan Feed

  1. Ketikkan script berikut,
    <?php
    //file name : rss.php
    //author : littleflow3r
    include 'initRSS.php';
    include 'connect.php';
    //get the feed and show it
    echo "<h1> RSS News Update </h1>";
    foreach ($feed->get_items(0,4) as $item):
    $permalink = $item->get_permalink();
    $title = $item->get_title();
    $desc = $item->get_description();
    echo '<a href="'.$permalink.' ">'; echo $title; echo '</a>';
    echo "<br>";
    echo $desc;
    echo "<br>"; echo "<br>";
    //insert to database
    $q = "INSERT into tb_rss (link, title, description) VALUES('$permalink','$title','$desc')";
    $result = mysql_query($q);
    endforeach;
    ?>
  2. Simpan dalam folder rss dengan nama rss.php
  3. Keterangan : Baris 08 menunjukkan looping dengan foreach sejumlah feed yang didapat dari alamat RSS yang telah ditentukan, dengan menggunakan fungsi get_items(0,4), maksudnya adalah mengambil 4 Feed items dimulai dari record ke 0.
    Baris 09 adalah menyimpan permalink dari setiap items yang didapat dalam variabel $permalink
    Baris 10 adalah mendapatkan judul feed dengan fungsi get_title kemudian disimpan dalam $title.
    Baris 11 adalah mendapatkan deskripsi dari feed dengan fungsi get_desc kemudian disimpan dalam $desc.

Step 6 : Testing Code

  1. Buka browser, jalankan http://localhost/rss/rss.php
  2. Anda akan melihat feed dari alamat rss yang anda masukkan tadi telah tertampil seperti gambar dibawah,
    Result
  3. Cek database anda, lihat bahwa tb_rss telah terisi dengan content rss dari alamat feed anda.
    Tb_RSS

Okay, Done. Happy Trying! Happy Coding :)

ini juga ada cara laen membuat rss dengan simplepie klik disini

sumber

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s