Prepojenie Instagramu s webom

V praxi sa často stretávam s požiadavkou prepojenia webu so sociálnou sieťou Instagram. Najčastejšia predstava o fungovaní takéhoto prepojenia je taká, že pridané fotografie na Instagram sa zobrazia aj na webe cez nejaký pekný slider fotografií. Instagram poskytuje aj rozhranie pre developerov a dostať sa k fotografiám je možné prostredníctvom API rozhrania. Toto však vyžaduje prístupové meno a heslo k Instagram účtu.

Prepojenie Instagramu s webom

Úvodná obrazovka sociálnej siete Instagram

 

Pokiaľ však nemáme prihlasovacie údaje k účtu na Instagrame, ktorý chceme prepojiť s webom, môžeme postupovať nasledovne. Použijeme službu dostupnú na adrese:

https://www.instagram.com/<USERNAME>/?__a=1

pričom <USERNAME> nahradíme užívateľským menom z Instagramu. Instagram nám následne poskytne JSON export daného profilu so všetkými požadovanými údajmi (základné infromácie o konte, výpis pridaných postov s URL adresou obrázkov, popisom, počtom reakcií, komentárov...)

Prepojenie Instagramu s webom

Tieto údaje stačí ďalej len parsovať a spracovať podľa želania. Je potrebné dodať, že táto služba poskytuje len posledných 12 fotografií.

 

Ukážka použitia:

Na ukážku som si zvolil zaujímavý Instagram profil Polícia SR - https://www.instagram.com/policiaslovakia/. Užívateľské meno je v tomto prípade policiaslovakia a adresa JSON služby teda bude: https://www.instagram.com/policiaslovakia/channel/?__a=1

 

Parsovanie JSON služby:

PHP skript pre spracovanie exportu môže mať nasledovnú štruktúru:

<?php

$username = 'policiaslovakia';

$instaload = file_get_contents('https://www.instagram.com/'.$username.'/channel/?__a=1');
$instagram = json_decode($instaload);
$instagram_photos = $instagram->graphql->user->edge_owner_to_timeline_media->edges;

foreach($instagram_photos as $instagram_photo)
{
echo $instagram_photo->node->display_url.'<br><br>';
}

?>

V jednoduchom skripte definujeme premennú $username, v tomto prípade policiaslovakia. Skript ďalej v cykle vypíše URL adresy posledne pridaných postov prostredníctvom zápisu:

$instagram_photo->node->display_url

Pri parsovaní odporúčam pre rýchly náhľad využiť túto službu - http://json.parser.online.fr, ktorá export prevedie do štruktúrovanej podoby. Výstup parsovania z vyššie uvedeného skriptu budú tvoriť jednotlivé URL smerujúce priamo na obrázky posledných 12 postom na Instagrame a bude vyzerať nasledovne:

Prepojenie Instagramu s webom

Už je ďalej veľmi jednoduché túto URL adresu využiť pre okamžité zobrazenie na vlastnom webe a to buď priamo linkovaním na Instagram, alebo si obrázky pre optimalizáciu rýchlosti načítavania môžeme stiahnuť k sebe na server a ďalej s nimi takto pracovať. Odporúčam, aby systém pre stiahnutie fotografií bežal na pozadí a v pravidelnom cykle prostredníctvom technológie CRON aktualizoval obsah automatizovane.

Pridať komentár k článku