Compteur d'abonnés Instragram
Tout est dans le titre. Il s'agit de réaliser un affichage du nombre d'abonnés du compte Instagram de Robotronik (@robotronik.phelma). Il faut donc concevoir la partie affichage en elle même, ainsi qu'un programme qui actualise en temps réel le nombre d'abonnés. Et pour le tester, quoi de mieux que de t'abonner toi même ! Les pages qui suivent proposent d'utiliser un ESP8266 et un écran LCD, et se concentrent donc sur l'aspect programmation du projet. Il est libre à vous de ne pas faire autant programmation et de vous concentrer sur la réalisation d'un affichage 7 segments en LED par exemple !
Fonctionnement du système
Le schéma suivant expose l'architecture générale du système de compteur d'abonnées que vous allez concevoir:
L'ESP8266 est un microcontrôleur, comme les cartes Arduino ou Raspberry Pi que vous avez peut être déjà croisées, mais en plus adaptées à notre projet, et ce pour plusieurs raisons:
- les cartes Arduino ne possèdent pas de module WiFi intégré, sauf pour les plus grosses, et donc les plus chères d'entre elles.
- l'utilisation d'une Rasberry Pi n'est pas très intéressante, car le projet nécessiterait de coder à peine une dizaine de ligne en Python. Le but étant de vous faire apprendre des choses, on cherche donc un peu plus de difficulté :)
ESP8266 Arduino Uno Raspberry Pi4
L'ESP8266 qu'on vous propose d'utiliser peut se programmer en une multitude de langage, dont le C++ et le Micro-Python (sorte de Python adapté à de l'électronique embarquée). Il se rapproche beaucoup d'une carte Arduino mais possède un module WiFi intégré. On pourra utiliser dans un premier temps l'IDE Arduino, puis éventuellement développer sur VsCode avec l'extension PlatformIo.
En ce qui concerne le système d'affichage, pas besoin d'aller très loin. Un simple écran LCD suffira dans un premier temps. Mais libre à vous de concevoir quelque chose de plus joli...
La difficulté du projet réside surtout dans le développement du code qui permet de récupérer le nombre d'abonnés au compte Instagram @robotronik.phelma. Il existe en effet une multitude de méthodes pour y parvenir:
- L'utilisation de l'API proposée par Facebook. C'est la solution la plus "clean" mais très complexe à réaliser car il faut correctement développer l'application qui utilise l'API: CGU, respect des données personnelles, etc. Un peu trop prise de tête pour récupérer une simple valeur...
- L'utilisation d'une API quelconque prévue pour la navigation sur Instagram. On peut en trouver une multitude sur Internet
- On peut aussi travailler avec des requêtes HTTPS, qui permettent de récupérer le fichier HTML de la page Web et d'en extraire les données qui nous intéresse
Peut importe la méthode que vous choisissez d'utiliser, il faudra chercher de la documentation, sur le fonctionnement des requêtes HTTPS si vous utilisez la 3e méthode par exemple.
Code
Le programme informatique à réaliser se découpe en 2 parties distinctes:
- gérer le système d'affichage, comme dit précédemment, l'affichage se fera dans un premier temps sur un écran LCD basique fourni par Robotrinik.
- récupérer le nombre d'abonnés. La doc sur un projet qui utilise les requêtes HTTPS, vous est fourni ici. Vous pouvez évidemment utiliser l'API de votre choix si vous ne voulez pas passer par les requêtes HTTPS.