Php Curl Ile Veri Çekme

Dökümanın Forum Konu Linktedir : http://www.tahribat.com/Forum-Dokuman-Php-Curl-Ile-Veri-Cekme-140472/

ini_get(set_time_limit(0)); // zaman aşımını kaldırıyoruz

$curl = curl_init(); //Curl oturumu başlatıyoruz

curl_setopt($curl, CURLOPT_URL, "http://www.tahribat.com"); //Curl ile bağlanmak istediğimiz adresi yazıyoruz

curl_setopt($curl, CURLOPT_HEADER, FALSE); //Çıktıda header bilgilerinin görüntülenip görüntülenmiyceğidir.false görüntülemez true görüntüler

curl_setopt($curl, CURLOPT_NOBODY, FALSE); //Buda çıktıda html kodlarının görüntülenip görüntülenmiyceğidir.true görüntülemez false görüntüler

curl_setopt($curl, CURLOPT_REFERER,""); //Sahte referer oluşturalım.

curl_setopt($curl, CURLOPT_USERAGENT,$_SERVER['HTTP_USER_AGENT']); //Suanki browser agent bilgilerinizi tanımladık. Duruma göre değiştirilebilir

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); /**bu değişken true ve false değeri almaktadır özelliğide şudur bağlantı kurulan sayfa headerla yada başka şekilde başka bir sayfaya yönleniyorsa o sayfanın içeriğine devam edip etmiyceğidir. **/

$gelenveri=curl_exec($curl); // Curl çıktımızı değişkene atadık.

/** Şuanki ayarlarla tahribat.com anasayfasındaki aktif konu başlıklarını ve linklerini çekebiliriz **/

$reg = "/<table   width=\"100%\" class=\"stdtable sortable\" ID=\"ActiveTopics\" >(.*?)<\/table>/i";

 /**<table   width=\"100%\" class=\"stdtable sortable\" ID=\"ActiveTopics\" >tagı ile </table> tagı arasındaki verilerialdırcağımız için arasına (.*?) yazdık**/

$gelenveri = ereg_replace("\n", "", $gelenveri); //burada \n replace edilerek tüm veri tek satıra indirildi

preg_match_all($reg, $gelenveri, $eslesen); //burada yukarıda tanımladığımız $reg değişkenindeki regex tahribat.comdan çektiğimiz veri ile eşleştirilip sadece orada tanımladığımız kısım $eslesen değişkenimize array olarak atandı

$aktifkonular=$eslesen[0][0]; //burda arraydan çıkartıp sabit bir değişkene alıyoruz.

$aktifkonular=str_replace('<a href="/','<a target="_blank" href="http://www.tahribat.com/',$aktifkonular);  /** konu linkleri self olduğu için linke tıklandığı anda scriptin bulunduğu sitede o sayfaya gitmek isteyeğinden hrefleri replace edip targetine blank verdik ve link yolunu tahribat.com yaptık. **/

$aktifkonular=str_replace('<img alt="" src="','<img alt="" src="http://www.tahribat.com/',$aktifkonular);    /** burdada konu başlıklarının yanındaki img nin çıkması için yine replace edip tahribat.com üzerinden verdirdik **/

echo $aktifkonular; // çıktımızı ekrana yazdırıyoruz. türkçe karakter sorunu oluşabilir onun içinde <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> en üste eklemeniz yeterli olucaktır.

curl_close($curl); // son olarakta curlumuzu kapatıyoruz. Ek olarak classlar linkteki gibi replace edilip değiştirilebilir yada varolan classlara css oluşturulup güzel görüntü elde edilebilir

Tarih:
Hit: 5607
Yazar: Cosmic



Yorumlar


Siftahı yapan siz olun
Yorum yapabilmek için üye girişi yapmalısınız.