fbpx
28 Dicembre 2017

Instaserver, libreria PHP per cercare immagini su instagram per Hashtag

Matteo Enna > Programmazione > I miei tools > Instaserver, libreria PHP per cercare immagini su instagram per Hashtag

See the English version

Ultimamente, per alcuni progetti da hobbista, ho avuto la necessità di automatizzare la ricerca di immagini da instagram partendo da un determinato hashtag. Per questo motivo ho realizzato Instaserver, un semplice sistema Client/Server per cercare le ultime immagini che hanno un determinato hashtag.

Instaserver

Per alcuni miei progetto avevo utilizzato il sistema che era alla base in una funzione PHP, ma per comodità e per poterla utilizzare anche in progetti in altri linguaggi ho preferito sfruttare un sistema Client/Server.

Instaserver

Per ottenere Instaserver basta scaricarlo dalla pagina progetto su GitHub e poi caricarlo sul proprio host. Il codice è rilasciato con la licenza libera LGPL, inoltre è scritto in modo molto elementare e facilmente modificabile. Il client deve semplicemente fare una chiamata all’url dove abbiamo o caricato il nostro file e passare tramite POST:

  • key: un token di sicurezza che inseriamo nel nostro file;
  • hashtag: la parola da ricercare;
  • limit: il numero di elementi da caricare.

Vediamo un po’ di esempi

Per capire meglio il funzionamento ecco due esempi che ho utilizzato, uno è in PHP  e l’altro in JavaScript.

PHP, le ultime 5 foto di instagram con hashtag “mare”

$timeout = 5;

$url = '{url}';
 $data = array(
 'key' => '{token}',
 'search' => 'mare',
 'limit' => 5
 );
 $cookie = tempnam ("/tmp", "CURLCOOKIE");
 $ch = curl_init();
 curl_setopt( $ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1" );
 curl_setopt( $ch, CURLOPT_URL, $url );
 curl_setopt( $ch, CURLOPT_COOKIEJAR, $cookie );
 curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
 curl_setopt( $ch, CURLOPT_ENCODING, "" );
 curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
 curl_setopt( $ch, CURLOPT_AUTOREFERER, true );
 curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false ); # required for https urls
 curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 5 );
 curl_setopt( $ch, CURLOPT_TIMEOUT, 5 );
 curl_setopt( $ch, CURLOPT_MAXREDIRS, 10 );
 curl_setopt( $ch, CURLOPT_POSTFIELDS, $data);

$content = curl_exec( $ch );
 $response = curl_getinfo( $ch );
 curl_close ( $ch );
 $result = json_decode($content);
var_dump($result);

JavaScript, le ultime 10 foto di instagram con hashtag “Sardegna”

$.ajax({
   url: "{url}",
   method: 'POST',
   data: {
      'key': '{token}',
      'search': 'Sardegna',
      'limit': 10
   },
   dataType: "text",
   crossDomain : true,
   success: function(msg)
   {
      var bb;
      bb = jQuery.parseJSON(msg);
      console.log(bb);
   }
});
Restiamo in contatto
Ho una newsletter in cui è possibile seguirmi: Iscriviti alla newsletter!

Pausa caffè/birra
Un programmatore è una creatura che converte caffè/birra in codice.
Se vuoi altri articoli come questo puoi contribuire:
Offrimi un caffè
Offrimi una birra
Close