PHP Dersleri

PHP ile İnstagram Profil Resmini Alma

PHP ile bir çok siteden veri almak mümkündür. Bu dersimizde popüler sosyal medya sitelerinden instagramı hedef alarak kullanıcıların profil resimlerinin nasıl alabileceğimizi işleyeceğiz. Bu işlemi daha öncesinde bir çok yolla gerçekleştirmiştik. Bu makale de ise farklı bir yoldan bu işlemi nasıl gerçekleştirebileceğinizden bahsedeceğim.

İnstagram sitesinden profil resmini almak için domDocument sınıfını kullanacağız. Bu sınıfla ilk olarak meta etiketlerini listeleyeceğiz. Sonrasında ihtiyacımız olan og:image etiketini alıp profil resmine ulaşmış olacağız.

<?php
## instagram Kullanıcı adı
$kullanici      = "ibrahimcevruk";
## İnstagram linki oluşturuyoruz.
$url            = "https://www.instagram.com/".$kullanici;
## Siteye bağlanıyoruz.
$balan          = file_get_contents($url); 
## domDocument sınıfını tanımladık
$pageDom        = new domDocument;
## Sınıfa bağlantıyı yolladık 
$pageDom-> loadHTML($balan);
## Bağlantıdan META etiketlerini seçiyoruz.
$metaEtiketleri = $pageDom->getElementsByTagName("meta");
## META etiketlerini döngüyle yazdırıyoruz
foreach($metaEtiketleri as $meta){
    ## Profil fotoğrafında durup, değeri değişkene atıyoruz.
    if($meta->getAttribute("property") == "og:image"){
        $profilFoto = $meta->getAttribute("content");
    }
}
## Profil fotoğrafını çıktı alıyoruz.
echo '<img src="'.$profilFoto.'">';
?>

Yukarıda yer alan kodlarla birlikte domDocument sınıfı ile İnstagram profil resmine ulaşabilirsiniz. Yapılan işlem oldukça basittir. İnstagram kullanıcı adı alındıktan sonra bağlantı kurulup bu bağlantı domDocument sınıfına yollanmaktadır. Sınıfa gönderilen bağlantıdan META etiketleri filtrelenerek FOREACH döngüsü ile döndürülmektedir. Gelen verilerden property değeri og:image olan META etiketinin bilgileri $profilFoto değişkenine atılmaktadır. Böylelikle instagram profil resmine ulaşılmaktadır. Elde edilen profil resmi de ECHO yardımı ile ekrana yazdırılarak çıktısı alınmaktadır.

domDocument sınıfı ile sadece META etiketleri alınmamaktadır. Bir çok HTML etiketine ulaşıp, filtreleme yaparak elde etmek istediğiniz değerlere ulaşabilirsiniz.

İlgili Makaleler

2 Yorum

  1. Birşey soracağım ben bunu nasıl şey yaparım sitedomain/username username e ne yazarsam onun resmi çıksın istiyorum nasıl yapabilirim?

    1. Yukarıdaki kodları kullanarak bir form ile username değeri girilerek resimlerinin çekilmesini sağlayabilirsin.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir