PHP Dersleri, MySQL ve Açık Kaynak


« PHP Bot ile Veri Çekme

php yaşam biçimidirGünümüzde büyüklü küçüklü tüm web siteleri neredeyse PHP diliyle kodlanmış bir halde önümüze sunuluyor. Haber siteleri, oyun siteleri, blog siteleri vs, hatta şu an size yazılar yazdığım WordPress gibi en çok kullanılan bir CMS (İçerik Yönetim Sistemi) bile PHP kullanarak yoluna devam ediyor. Peki bu ve benzeri sitelerden gördüğümüz haber kategorileri, oyunlar vs. kendi web sitemizde bir bölüm oluşturarak gösterme şansımız yok mudur ? Tabi ki vardır.

 

PHP bot ile veri çekmenin en basit mantığından yola çıkarsak, verileri çekmek istediğimiz sayfanın kaynak kodlarında belirli bir alanı belirterek kendi veritabanımıza veya sayfamıza çekme işlemi olarak adlandırabiliriz. Bunu kod yardımı ile yaparak algoritmayı tamamlamak kalıyor geriye sadece. Bu işlemide en basit örneklerle açıklayalım.

 

İlk önce PHP bot çekim işlemini en basit şekilde yapmak için file_get_contents() fonksiyonumuz mevcut.

 

$site = "//www.guraysuerdem.com";
$icerik = file_get_contents($site);
echo $icerik;

 

Bu kod yardımı ile bir php dosyasını çalıştırarak blog sayfamın kaynak görüntüsünü ekrana yazdırabilirsiniz. Veya istediğiniz bir web sitesinin kaynak kodunu ekrana yazdırabilirsiniz.
Web sitesinden veri çekmenin ve ulaşmanın bir diğer yolu ise CURL fonksiyonlarıdır.

 

 functioncurl($url, $post=false)
{
$user_agent= 'Mozilla/5.0 (Windows; U; Windows NT 5.1; tr; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6';
$ch= curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, $post? true : false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post? $post: false);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
$icerik= curl_exec($ch);
curl_close($ch);
return$icerik;
}

 
Şimdilik basit mantık şeklinde web sitesine ulaşmayı anlatmaya çalıştım, yazının devamında veri çekme işlemini gerçekleştireceğiz. Eğer veri çekmek istediğiniz bir web sitesi mevcutsa o örnek üzerinden gidebiliriz, örneğin haber sitesi vs.




2 Yorum


  • 10 Nisan 2016
    adidas yazdı


    Harika bir paylaşım teşekkürler.

  • 21 Ekim 2016
    hakan yazdı


    sahibinden.com daki ilanlar çekilebilirmi? Örnek olarakda iyi olur 🙂

Yorumla