Çalışma mantığı: Basit şekilde linkleri alıyoruz ve linkleri okuyup içeriklerini parçalıyoruz. $sayfa = file_get_contents(http://www.iha.com.tr/kahramanmaras-haberleri/); kısmındaki adresi içeriğini çekmek istediğiniz yerel haber linki ile değiştirin ve o il için yerel haberleri listelesin. Adresler zaten İHA sitesinde mevcut.
Örnek: Ankara için yazmanız gereken adres: http://www.iha.com.tr/ankara-haberleri/
<?php
$sayfa = file_get_contents("http://www.iha.com.tr/kahramanmaras-haberleri/");
// Üstteki 4 Haber
$a = '/<ul class=\"lastnews mtop2\">(.*?)<\/ul>/si';
preg_match_all($a,$sayfa,$aa);
$aaa = strip_tags($aa[1][0],"<a>");
preg_match_all('#<a href="(.*?)" title="(.*?)">(.*?)</a>#s',$aaa,$aaaa);
$a1 = $aaaa[1];
// Manşetteki Haberler
$b = '/<ul class=\"nums yhnum\">(.*?)<\/ul>/si';
preg_match_all($b,$sayfa,$bb);
$bbb = strip_tags($bb[1][0],"<a>");
preg_match_all('#<a href="(.*?)" title="(.*?)">(.*?)</a>#s',$bbb,$bbbb);
$b1 = $bbbb[1];
// Manşet Altı Haberler
$c = '/<ul class=\"col full\">(.*?)<\/ul>/si';
preg_match_all($c,$sayfa,$cc);
$ccc = strip_tags($cc[1][0],"<a>");
preg_match_all('#<a href="(.*?)" title="(.*?)">(.*?)</a>#s',$ccc,$cccc);
$c1 = $cccc[1];
// Diğer Haberler
$d = '/<ul class=\"related\">(.*?)<\/ul>/si';
preg_match_all($d,$sayfa,$dd);
$ddd = strip_tags($dd[1][0],"<a>");
preg_match_all('#<a href="(.*?)" title="(.*?)">(.*?)</a>#s',$ddd,$dddd);
$d1 = $dddd[1];
$yazdir = array_merge($a1,$b1,$c1,$d1); // Tüm Linkleri Tek Bir Diziye Aldım
$dizitoplam = count($yazdir); // Dizide toplam kaç eleman var
for ($x = 0; $x < $dizitoplam; $x++) {
echo "Sıra:".$x."<br>";
$haber = file_get_contents($yazdir[$x]);
// Haberin Tarihi
$tarihal = '/<span class=\"newsdate\">(.*?)<\/span>/si';
preg_match_all($tarihal,$haber,$tarih);
$tarihyaz = $tarih[1][0];
echo "Tarih: ".$tarihyaz."<br>";
// Haberin Bailığı
$baslikal = '/<h1 class=\"page-tit darkblue\" style=\"margin-bottom:12px;\">(.*?)<\/h1>/si';
preg_match_all($baslikal,$haber,$baslik);
$baslikyaz = $baslik[1][0];
echo "Başlık: ".$baslikyaz."<br>";
// Haberin Görseli
$resimal = '/<div class=\"imagealign1\">(.*?)<\/div>/si';
preg_match_all($resimal,$haber,$resim);
$yaz = $resim[1][0];
$yaz1 = strpos($yaz,'"'); // Söz diziminde " karakterinden önce kaç karakter var
$yaz2 = substr($yaz,$yaz1+1); // ilk " karakterinden sonraki kısım
$yaz3 = strpos($yaz2,'"'); // ikinci " karakterinnden önce kaç karakter var
$resimyaz = substr($yaz,$yaz1+1,$yaz3);
echo "Resim Adresi: ".$resimyaz."<br>";
// Haber İçeriği
$icerikal = '/<div class=\"editor1y\">(.*?)<\/div>/si';
preg_match_all($icerikal,$haber,$icerik);
$icerikyaz = $icerik[1][0];
echo "Haber İçeriği: ".$icerikyaz."<hr>";
}
?>