Instagram Api İle Kullanıcı Bilgilerine Ulaşma

Pwdec

Kıdemli Üye
28 Haz 2016
4,607
149
/etc/passwd
Instagram apisini kullanarak, kullanıcıların profil bölümünde yer alan değerlere ulaşacağız. Bu bilgiler; kullanıcı adı, biyografisi, web sitesi, profil fotoğrafı, tam adı ve kullanıcı id 'si dir. Burada asıl önemli olan değer, diğer aşamalarda kullanılacak olan, kullanıcının kullanıcı id 'si dir. Tabi bunu dışında kalan bilgilerle de dilediğiniz gibi uygulamalar geliştirebilirsiniz.

Instagram apisi ile işlem gerçekleştirmek için, öncelikle instagram.com/developer adresine girip giriş yapıyoruz. Sonrasında bir uygulama oluşturup gerekli bilgileri yazıyoruz. Uygulamayı oluşturduktan sonra elde edeceğimiz Client ID değeri ile api işlemlerini gerçekleştireceğiz.

Kullanacağımız Link Yapısı

https://api.instagram.com/v1/users/search?q=KULLANICIADI&client_id=CLİENTİDSİ


Bu link yapısına Kullanıcı adı ve oluşturduğumuz uygulamadan gelen Client ID'yi yazdığımızda, temel kullanıcı bilgilerine ulaşabileceğimiz url yapısını oluşturmuş oluyoruz. Hazırlamış olduğumuz bu URL yapısına, cURL yardımı ile erişim sağlayacağız.


Kod:
<?php

Function Baglan($a){

   $ch	= curl_init();

   curl_setopt($ch, CURLOPT_URL, $a); 

   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

   curl_setopt($ch, CURLOPT_HEADER, false); 

   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 

   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

   $isle	= curl_exec($ch); 

   curl_close($ch); 

   return $isle; 

}

?>



Bağlantı fonksiyonunu oluşturduğumuza göre artık, oluşturmuş olduğumuz url bağlantısını gerçekleştirerek bilgilere ulaşabiliriz.


Kod:
<?php

$clientid = ""; // Instagramda oluşturduğumuz uygulamadan gelen değer.

$aranan = "ibrahimcevruk"; // bilgilerini çekeceğimiz kişinin kullanıcı adı

$veri= Baglan("https://api.instagram.com/v1/users/search?q=$aranan&client_id=$clientid");

?>



Bağlantı fonksiyonunun ardından oluşturduğumuz bu URL değerine erişimi sağlayıp, çıktıyı alalım. Çıktıyı almak için URL yapısını cURL fonksiyonundan geçirdiğimiz $veri değişkenini, print_r ile çalıştırıyoruz. Gelecek olan verileri düzenlemek için de json_decode fonksiyonunu kullanıyoruz.



Kod:
<?php 

echo "<pre>";

print_r(json_decode($veri));

echo "</pre>";

?>



Kodlama yapısını bu şekilde oluşturduğumuzda elimizde tüm bilgilerin yer aldığı bir Array dizini gelecektir. Eğer aranacak olan kişinin kullanıcı adı tam olarak yazılmazsa, o kullanıcı adına en yakın kullanıcılar listelenecektir. Yani birden fazla bilgilerin listelenmesi olasılığı bulunmaktadır. Örneğin; ibrahimcevruk yerine, ibrahim diye yazdığımızda birden fazla sonuç çıkacaktır.

Kullanıcı bilgilerini tam olarak girip, istediğimiz sonucu elde ettiğimizde çıktı olarak elimize aşağıdaki gibi bir dizi gelecektir;

Kod:
stdClass Object

(

    [****] => stdClass Object

        (

            [code] => 200

        )



    [data] => Array

        (

            [0] => stdClass Object

                (

                    [username] => ibrahimcevruk

                    [bio] => Rammstein Delisi, Yabancı Dizilerin hastası, Her şeye Gülen Adam! #PartTimeÇapulcu #BJK #çArşı #Webmaster #Php #BehzatÇ #KitapSever

                    [website] => http://ibrahimcevruk.com

                    [profile_picture] => https://igcdn-photos-h-a.akamaihd.net/hphotos-ak-xpa1/t51.2885-19/927683_1495263254022295_1018875548_a.jpg

                    [full_name] => ibrahim Çevrük

                    [id] => 367625446

                )

        )

)



Çıkan bu sonuç doğrultusunda istediğimiz bilgilere Array yapısındaki değeri yazarak ulaşabiliriz. Burada ulaşmak istediğimiz verilere -> ifadesini kullanarak elde ediyoruz. Bunun nedeni Object değerinde verilerin döndürülmesinden dolayıdır.

Sonuç ekranında gelen verileri istediğimiz yerde kullanmak ya da değişkenlere aktarmak için aşağıdaki yollara göz atabilirsiniz.



Kod:
<?php

echo json_decode($veri)->data["0"]->username."<br>";

echo json_decode($veri)->data["0"]->bio."<br>";

echo json_decode($veri)->data["0"]->website."<br>";

echo json_decode($veri)->data["0"]->profile_picture."<br>";

echo json_decode($veri)->data["0"]->full_name."<br>";

echo json_decode($veri)->data["0"]->id."<br>";

?>



Tabi burada yer alan kodları istediğiniz gibi kendinize uyarlayabilirsiniz. Bu şekilde ilk değeri alabileceğiniz gibi foreach döngüsünü kullanarak gelen bütün değerleri döndürebilirsiniz. Bu örnekteki bilgileri pekiştirerek istediğiniz gibi uygulamalar geliştirilebilir.





Alıntıdır.


[ame]https://www.youtube.com/watch?v=KDJZC447bLU&feature=youtu.be[/ame]
 
Son düzenleme:

Luwexigo

Uzman üye
9 Ara 2017
1,844
5
Eline sağlık resim eklesen daha güzel olurmuş ama yinede güzel anlatmışsın
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.