idealde yapmanız gereken bot kodunu ana sayfa kodundan ayırmak yoksa her ana sayfa isteğinde bot veri çekmeye çalışır, veri çekme işlemi bitmeden de sayfa oluşturulmaz. bu da yavaşlamaya sebep olur.

havadurumu_cek.php gibi ayrı bir dosyada botu çalıştırıp sonucu veritabanına kaydedip anasayfada curl vs kullanmadan veritabanından okutursanız çok daha hızlı olur.

havadurumu_cek.php'yi de cron ile belli aralıklarla çalıştırmanız gerekir ki veritabanındaki veri güncel olsun. host panellerinde cron ayarları var.

havadurumu_cek.php

error_reporting(E_ALL);
$ch = curl_init("siteadresi");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_NOBODY, 0);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36");
$zer = curl_exec($ch);
// burada $zer degiskenini veritabanina kaydediyoruz


anasayfa.php

// $zer i veritabanından çekiyoruz geri kalan kısım aynı
preg_match_all('@(.*?)@si',$zer,$ncek01);
preg_match_all('@
(.*?)
@si',$zer,$ncek02);
preg_match_all('@
(.*?)
@si',$zer,$ncek03);
preg_match_all('@
(.*?)
@si',$zer,$ncek04);

curl_close($ch);