folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder Php Ve Curl Sıkıntısı.



Php Ve Curl Sıkıntısı.

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cankol
    cankol's avatar
    Kayıt Tarihi: 19/Haziran/2008
    Erkek

    Instagram api ile veri çekme konusunda birkaç birşey deniyorum. Birçok alanı hallettim ancak Profilleri çektirme konusunda tıkandım kaldım.

    Instagram api, profil çekmek için kullanıcı ID kullanıyor.

    Böyle olunca da tek sayfada çift curl çalıştırmam gerekiyor, ilk curl kullanıcı adından> kullanıcı id oluyor,

    ikinci curl'da id alıp hesap bilgilerini getiriyor.

    localde çalışıyor, hostta çalışmıyor.

    Kod kaynaklı mı , sunucu kaynaklı mı bir türlü işin içinden çıkamadım. Keza localde çalıştığına göre Sunucu kaynaklı olabilir.

    Fikirleriniz, önerileriniz lazım kardeşler. İncelemek isteyen olursa;

     

    <!DOCTYPE HTML>
    
    <html lang="en-US">
    <title>Instagrama Resim Arşivleyici </title>
    <head>
    
    	<meta charset="UTF-8">
    
    	<title></title>
    
    	<style type="text/css">
    
    		.kutu{width:260px;height:260px;background:white;float:left;margin-left:5px;}
    
    .temiz{clear:both;}
    
    	</style>
    
    </head>
    
    <body>
    
    <?php
    
    $ins_key="access_token=";
    // curl veri çekme fonksiyonu
    function getir($url)
    {
    $curl = curl_init();
    
    curl_setopt($curl,CURLOPT_URL,$url);
    curl_setopt($curl,CURLOPT_HEADER,false);
    curl_setopt($curl, CURLOPT_NOBODY, FALSE); 
    curl_setopt($curl, CURLOPT_REFERER,""); 
    curl_setopt($curl, CURLOPT_USERAGENT,$_SERVER['HTTP_USER_AGENT']); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($curl,CURLOPT_CONNECTTIMEOUT, 10);       // bunu 23.09.2013 te ekledim google mail getirde takılma için
    $data=curl_exec($curl); 
    curl_close($curl);
    return $data;
    }
    // curl veri çekme fonksiyonu
    
    
    
    // Karakterten Kaç Tane Var Sayar
    function kactane($string,$bulunacak,$yoksa=0){ 
    $array = explode($bulunacak,$string); 
    if($array)return count($array)-1;else return $yoksa; 
    }
    
    
    
    
    
    // veritabanı bağlantısı
    set_time_limit(0);
    $host="localhost"; 
    $vt_adi="instagram"; 
    $kullanici="instagram";
    $sifre="instagram";
    
    $db = @mysql_connect($host,$kullanici,$sifre);
    if(!$db){
    echo "mysql sunucu kapalı veya hesap bilgileri yanlış";
    exit;
    }
    
    $test=@mysql_select_db($vt_adi,$db);
    if(!$test){
    echo "Veritabanı adı yanlış";
    exit;
    }
    @mysql_query("set names utf8_turkish_ci");
    @mysql_query("SET NAMES 'utf8'");
    @mysql_query("SET CHARACTER SET 'utf8'");
    @mysql_query("SET COLLATION_CONNECTION = 'utf8_turkish_ci'");
    @mysql_query("set names cp1251_general_ci");
    
    if($_SERVER["HTTP_USER_AGENT"]==""){ exit(); }  
    // veritabanı bağlantısı
    
    
    
    
    
    $profil=$_GET['profil'];
    
    
    if (empty($profil))
    
    {
    $botsorgu = mysql_query("SELECT * FROM ins_cekilecekler where sira='0' order by rand() ") or die(mysql_error());
    $basive = mysql_fetch_array($botsorgu);
    $botid=$basive['uyeno'];
    $ins_id=$basive['ins_Id'];
    $nick=$basive['nick'];
    
    
    if (empty($nick))
    {
    $sifirla = mysql_query("update ins_cekilecekler set sira='0'");
    echo '<meta http-equiv="refresh" content="5">';
    }
    
    if(empty($profil))
    {
    mysql_query("update etiketler set durum='0' where durum='1'  ");
    echo '<meta http-equiv="refresh" content="5;URL=index.php">';
    } 
    
    
    }
    else
    {
    $profil=$_GET['profil'];
    $profils=urlencode($profil);
    $link='https://api.instagram.com/v1/users/search?q='.$profils.'&'.$ins_key.';
    ';
    $getir=getir($link);
    $parse=json_decode($getir);
    $ins_id=$parse->data[0]->id;
    
    }
    
    
    
    $zaman=time();
    // https://apigee.com/embed/console/instagram
    
    
    $link='https://api.instagram.com/v1/users/'.$ins_id.'/media/recent/?'.$ins_key.'';
    $getir=getir($link);
    
    
    
    $parse=json_decode($getir);
    
    $sayi=kactane($getir,"location")-1;
    
    
    For($i=0; $i<=$sayi; $i++)
    {
    $username=$parse->data[$i]->user->username;
    $profil_resim=$parse->data[$i]->user->profile_picture;
    $resimk=$parse->data[$i]->images->thumbnail->url;
    $resimb=$parse->data[$i]->images->standard_resolution->url;
    
    $format=$parse->data[$i]->type;
    $aciklama=$parse->data[$i]->caption->text;
    
    $fins_id=$parse->data[$i]->id;
    
    
    $resimidsi=explode('_',$fins_id);
    $medyaid=$resimidsi[0];
    
    
    
    $durumsorgula = mysql_query("SELECT * FROM `ins_arsiv` where resimid='$medyaid' ") or die(mysql_error());
    $sonuc = mysql_fetch_array($durumsorgula);
    if (empty($sonuc))
    {
    
    $file= fopen ('ins_resim/'.$medyaid.'.jpg', 'w+');
    $curl = curl_init($resimb);
    curl_setopt($curl, CURLOPT_TIMEOUT, 50);
    curl_setopt($curl, CURLOPT_FILE, $file);
    curl_exec($curl);
    curl_close($curl);
    fclose($file);
    
    echo '<div class="kutu"><img border="0" src="'.$resimk.'" title='.$nick.'></div>';
    
    
    mysql_query("INSERT INTO ins_arsiv (fenomen_id , username, resimid , aciklama, durum , aktiflikzamani) VALUES ('$ins_id','$username', '$medyaid', '$aciklama', '0', '$zaman' )");
    }
    
    
    
    
    flush(); // Tamponu temizle.
    ob_flush();
    
    }
    echo '<div class="kutu"><img border="0" src="'.$profil_resim.'" title='.$nick.'><br><b>'.$nick.'</b></div>';
    echo '<div class="temiz"></div>';
    $beklemeyeal = mysql_query("update ins_cekilecekler set sira='1' where uyeno='$botid' ");
    
    echo '<meta http-equiv="refresh" content="5">';
    
    
     ?>
    
    
    </body>
    
    </html>

     

     

    cankol tarafından 14/Ara/15 10:00 tarihinde düzenlenmiştir

    imza.
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Herbokolog
    KaptaN
    KaptaN's avatar
    Üstün Hizmet Madalyası
    Kayıt Tarihi: 30/Ağustos/2005
    Erkek
    cankol bunu yazdı

    Instagram api ile veri çekme konusunda birkaç birşey deniyorum. Birçok alanı hallettim ancak Profilleri çektirme konusunda tıkandım kaldım.

    Instagram api, profil çekmek için kullanıcı ID kullanıyor.

    Böyle olunca da tek sayfada çift curl çalıştırmam gerekiyor, ilk curl kullanıcı adından> kullanıcı id oluyor,

    ikinci curl'da id alıp hesap bilgilerini getiriyor.

    localde çalışıyor, hostta çalışmıyor.

    Kod kaynaklı mı , sunucu kaynaklı mı bir türlü işin içinden çıkamadım. Keza localde çalıştığına göre Sunucu kaynaklı olabilir.

    Fikirleriniz, önerileriniz lazım kardeşler. İncelemek isteyen olursa;

     

    Instagrama Resim Arşivleyici.$nick.

     

     

    Hem konu up olsun hemde  ne amaçlı topluyorsun merak ettim

  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pSkpt
    pSkpt's avatar
    Kayıt Tarihi: 10/Aralık/2010
    Erkek

    sunucuda

    <?php

    phpinfo();

    ?>

    yapıp bi dene bakalım CURL var mı?


    İmza...
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cankol
    cankol's avatar
    Kayıt Tarihi: 19/Haziran/2008
    Erkek

    @kaptan hocam api işlerine merak sardım bu ara, instagram daha basit geldi bu açıdan, zaten muazzam bir veri var çekmek için harddisk tarlası lazım :)

    --

    sunucu da curl mevcut info çıktısında da geliyor. ama bahsettiğim gibi çalışmıyor bu kısımda. mesela başka veriyi çekiyor ama bu sayfada çekmiyor. hani curl çalışıyor ama yalnızca bu sayfada çalışmıyor. 

    ayrıca curl'a dizin yolunu ısrarla her yolu deneyerek göstermeme rağmen, bi dizine veri kaydediyor ama bir alt dizine kaydetmiyor.

    anlayamadım gitti, sunucu da mı sıkıntı kod da birşey mi kaçırıyorum çözemedim.

     


    imza.
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pSkpt
    pSkpt's avatar
    Kayıt Tarihi: 10/Aralık/2010
    Erkek
    cankol bunu yazdı

    @kaptan hocam api işlerine merak sardım bu ara, instagram daha basit geldi bu açıdan, zaten muazzam bir veri var çekmek için harddisk tarlası lazım :)

    --

    sunucu da curl mevcut info çıktısında da geliyor. ama bahsettiğim gibi çalışmıyor bu kısımda. mesela başka veriyi çekiyor ama bu sayfada çekmiyor. hani curl çalışıyor ama yalnızca bu sayfada çalışmıyor. 

    ayrıca curl'a dizin yolunu ısrarla her yolu deneyerek göstermeme rağmen, bi dizine veri kaydediyor ama bir alt dizine kaydetmiyor.

    anlayamadım gitti, sunucu da mı sıkıntı kod da birşey mi kaçırıyorum çözemedim.

     

    Instagram, sunucun IP'sini banlamış olabilir. Yolladığın isteklerden gelen ham veriye bi bak işlemeden, ne yazıyor durum nedir?

    Bu arada açıkça kendi instagram access_token'ını vermişsin maşallah ne bu güven?

    Millet senin adına yorum atsın, like atsın, follow etsin istiyorsun sanırım? :)

    Kaldır bence bi an önce.


    İmza...
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cankol
    cankol's avatar
    Kayıt Tarihi: 19/Haziran/2008
    Erkek

    Haha :) hallettim hocam :)

    Yok instagramdan sonuç geliyor çalışıyor gayet güzel ancak belirttiğim kısım olmuyor :) 


    imza.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    motka
    motka's avatar
    Kayıt Tarihi: 28/Ekim/2012
    Erkek

    @pSkpt access_token ile like,follow artık yapılmıyor diye biliyorum hocam yoksa yapılıyor mu?

Toplam Hit: 931 Toplam Mesaj: 7
php api curl