• 19-12-2010, 03:45:36
    #1
    Üyeliği durduruldu
    php yeni öğreniyorum, yeterli bilgi ve tecrübem olmadığından bir kaç konuda yardım istiyorum.

    imdb bot yapmaya çalışıyorum.

    imdb de senaryo yani Write yazan kısım, yazar tekse Write eğer birden fazla ise Writer yazıyor.

    Oyuncular kısmını beceremedim.

    Bir de poster çekilecek.

    Botu geliştirmeye yardımcı olmanızı bekliyorum.



    <?php
    @error_reporting(E_ALL ^ E_NOTICE);
    @ini_set('error_reporting', E_ALL ^ E_NOTICE);
    @ini_set('display_errors', '1');
    @ini_set('display_errors', '2');
    @ini_set('display_startup_errors', '1');
    @ini_set('ignore_repeated_errors', '0');
    
    $text = file_get_contents("http://www.imdb.com/title/tt0499549");
    $text = str_replace(array("\n","\r"), "", $text);
    
    
    $regex = "#<title>(.*) \- IMDb</title> *#U";
    preg_match_all($regex, $text, $baslik, PREG_SET_ORDER);
    
    $regex = "#<h2>Storyline</h2><p>(.*?)<em class#U";
    preg_match_all($regex, $text, $konu, PREG_SET_ORDER);
    
    $regex = "#</h4><a href=\"/genre\/[\w\-]+\"\>(.*)</div>#U";
    preg_match_all($regex, $text, $turu, PREG_SET_ORDER);
    
    $regex = "#</h4><a href=\"/language\/[\w\-]+\"\>(.*)</div>#U";
    preg_match_all($regex, $text, $dili, PREG_SET_ORDER);
    
    $regex = "#<a href=\"/country\/[\w\-]+\"\>(.*)</div>#U";
    preg_match_all($regex, $text, $ulke, PREG_SET_ORDER);
    
    $regex = "#Release Date:</h4>(.*)<span class#U";
    preg_match_all($regex, $text, $gosterimtarihi, PREG_SET_ORDER);
    		
    $regex = "#</h4>(.*)</div><div#U";
    preg_match_all($regex, $text, $yonetmen, PREG_SET_ORDER);
    
    $regex = "#rate\"><b>(.*)</b><span #U";
    preg_match_all($regex, $text, $rating, PREG_SET_ORDER);
    
    $regex = "#Runtime:</h4>(.*)<span class#U";
    preg_match_all($regex, $text, $sure, PREG_SET_ORDER);
    
    $regex = "#<title> (.*)IMDb</title> #U";
    preg_match_all($regex, $text, $moviedate, PREG_SET_ORDER);
    
    $regex = "#(.*)#U";
    preg_match_all($regex, $text, $poster, PREG_SET_ORDER);
    
    $regex = "#(.*) #U";
    preg_match_all($regex, $text, $oyuncular, PREG_SET_ORDER);
    
    $regex = "#(.*) #U";
    preg_match_all($regex, $text, $senaryo, PREG_SET_ORDER);
    
    echo "<table width='100%' border='0' align='center'><tr><td colspan='2'>
    ".$poster[0][1]."
    <b>Filmin adı: ".$baslik[0][1]."</b><br>                    
    <b>Gösterim tarihi:</b>  ".$gosterimtarihi[0][1]." <br>                    
    <b>Yönetmen:</b>".$yonetmen[0][1]." <br> 
    <b>Oyuncular:</b>  ".$oyuncular[0][1].". <br>
    <b>Senaryo:</b>".$senaryo[0][1]." <br> 
    <b>Türü:</b> ".$turu[0][1]."<br>
    <b>Rating:</b> ".$rating[0][1]."<br>
    <b>Dili:</b> ".$dili[0][1]."<br>
    <b>Ülke:</b> ".$ulke[0][1]."<br>
    <b>Süre:</b> ".$sure[0][1]."<br>
    <b>Konu:</b> ".$konu[0][1]."<br>
    </td></tr></table>";
    ?>
  • 19-12-2010, 14:22:07
    #2
    Üyeliği durduruldu
    https://www.r10.net/ucretsiz-scriptle...ini-ceker.html
  • 19-12-2010, 14:54:36
    #3
    Üyeliği durduruldu
    botu geliştirmeye yardımcı olamayız ama kendini geliştirmeye yardımcı oluruz. Yapmaya çalış yapamadıgın yerde bakın bunları yaptım olmuyor diye sor bizde nerde yanlış yaptıgını söyleyelim
  • 19-12-2010, 15:31:45
    #4
    Üyeliği durduruldu
    yukarıda da belirttiğim üzere ihtiyacım olan şunlar

    imdb de senaryo yazan kısım, yazar tekse Writer, eğer birden fazla ise Writers yazıyor. Bir örnek classta aşağıdaki gibi kullanmış ama benim scriptte çalışmıyor

    <h4 class="inline">\s+(Writer|Writers):(.*)</div><div
    Oyuncular kısmını beceremedim. Burası tablo halinde kaynak koduna bakıldığında belli. Bazı html kodlarını atlayıp bir sonrakini çekmek gerekiyor ama karışık. örnek imdb class kodları benim scripte çalışmıyor
    Mesela bir classta aşağıdakini kullanmış. ben denedim olmuyor.

    <td class="name">\s+<a\s+href="/name/nm(\d+)/">(.*)</a>\s+</td
    burada yer alan s+ , (\d+) , yerine nasıl kullanmam gerekiyor.