Merhaba, bir sinema sitesi işi için filmleri karşıdan çeken bot yapmam gerekiyor.
Kodlarımın Mantığı şu şekilde
for($i=1; $i<100; $i++)
{
$cekilecek = file_get_contents("http://www.sinemalar.com/film/$i");
$baslik = str_replace(" - Sinemalar.com","",$this->ara("<title>", "</title>", $cekilecek));
}Burada Var Olanları sorunsuz çekiyor. Ama bir sayfa 404 ise yani yok ise Alttaki Hatayı Alıyorum.
Warning: file_get_contents(
http://www.sinemalar.com/film/1) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in
Yapmak istediğim şey Eğer karşıdaki sitede bu sayfa yoksa döngüde continue kullanarak $i değerini 1 artırarak bir sonraki sayfaya geçiş sağlamak ama yapamadım.
Kullandığım kod;
$cekilecek = file_get_contents("http://www.sinemalar.com/film/$i");
if($cekilecek===false)
{
continue;
}Yukarıdaki kodun dışında bildiğim bir iki kombinasyonu daha denedim ancak olmadı. Eğer bir fikri olan varsa belirtirse sevinirim.
<?php
function git_bro($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$print = curl_exec($ch);
$sunucu_yaniti = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$arimedya_islem_sonucu = array('sunucu_yaniti' => $sunucu_yaniti, 'kaynak' => $print);
return $arimedya_islem_sonucu;
}
$i = 1;
$cekilecek = git_bro("http://r10.net/");
if($cekilecek["sunucu_yaniti"] == "200")
{
echo "devam edebiliriz abi";
}
?>
file_get ....
Başına @ ekleyip deneyebilir/test edebilir misiniz?
@file_get...
O sadece hata kodlarını kapatır, çözüm değildir.