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
Hit: 7110
Yazar: Cosmic