Comment créer un Bot Instagram gratuitement en 2021 ?

Article mis à jour le Thursday, February 18, 2021.

Créer un Bot Instagram en Python

Vous voulez plus d’abonnés sur Instagram ? Aller suivre et liker les posts des gens pour qu’ils vous suivent en retour vous apporte peu de résultats ? Les Engagement Pods et autres techniques vous prennent trop de temps ? Votre taux d’engagement est trop faible et vos abonnés finissent pas vous unfollow ?

Vous le savez, plus de visibilité est égal à plus d’opportunités. Perdre des heures par jour pour faire des tâches répétitives sur Instagram n’est pas la meilleure stratégie pour faire grossir votre réputation.

Bonne nouvelle : Il existe des outils simples et gratuit pour vous aider à grandir sur Insta de manière automatique. En utilisant ces outils vous pouvez vous concentrer à 100% sur la création de contenu et l’entretien de votre communauté plutôt que d’aller les chercher à la main.

Un Bot Instagram est un programme informatique qui vous permet d’intéragir avec Instagram pour effectuer des actions comme s’abonner à des personnes ainsi que like et commenter des posts automatiquement d’après vos règles.

Dans cet article je vous raconte comment, en quelques mois, j’ai monté un compte Instagram avec près de 10.000 vrais followers engagés en utilisant un Raspberry Pi.

Au programme, nous découvrirons ensemble :

  • Comment développer un Script pour gagner en followers insta passivement ?
  • Quelles sont les meilleures stratégies pour avoir beaucoup d’abonnés sur Instagram ?
  • Comment héberger gratuitement son bot instagram et ne pas se faire bannir ?

Commençons ensemble à développer le script qui vous permettra d’atteindre vos objectifs sur Instagram !

Pourquoi et comment développer un bot Instagram ?

Pour gagner des abonnées sur Instagram il y a des nombreuses techniques, certaines payantes, d’autres illégales d’après les règles d’Instagram, d’autres vous prendront beaucoup de temps et puis il y a celles qui fonctionnent.

Les services payants comme acheter des abonnés ou payer des accès à des platforms de bots existent mais vous risquez de vous faire bannir d’Instagram en les utilisant.

Une autre alternative est d’imiter les actions manuelles que vous faire à l’aide d’un programme de quelques lignes dans lequel vous définissez vos règles, c’est gratuit, sûr et rapide à développer.

Automatiser des tâches répétitives sur Instagram

Instagram est très chronophage et pourtant souvent très important pour vos objectifs. Que ce soit pour faire grandir votre image, votre entreprise ou votre marque, votre public se trouve sur Instagram.

Que ce soit la technique follow unfollow ou bien celle à 1 dollar 80 de Gary Vaynerchuk qui consiste “donner ses 2 centimes” en likant et commentant 9 des meilleurs posts trending dans 10 Hashtags que vous suivez ou bien une autre stratégie du même genre, ces tâches peuvent être automatisées.

Pourquoi coder son bot Instagram en Python ?

Nous allons donc automatiser des actions quotidiennes en développant un simple bout de code avec vos consignes et pour créer ce code, nous allons utiliser Python, un langage très populaire et souvent préféré pour l’écriture de scripts.

Comment intéragir avec Instagram si son API est fermée ?

Comme Instagram a grandement limité l’utilisation de son API, il n’est plus possible de créer des bots en faisant des calls au serveurs d’Instagram directement. Plutôt que de faire appels aux API d’Instagram, ce package ouvre ou émule (comme nous verrons plus tard) une fenêtre de navigateur et génère des clics aux endroits voulu.

Option #1 : Utiliser le module Python Selenium

Option 1 Selenium Bot Instagram

Une première manière de développer son propre bot Instagram est de partir de zéro et d’utiliser une librairie qui nous permet d’interagir avec un navigateur internet pour simuler nos actions. Si vous avez écrit des tests, il est possible que vous ayez déjà utiliser le package dont on va parler : Selenium.

Selenium est un framework qui permet de tester des applications web. Selenium fournit un ensemble d’outils pour automatiser des interactions avec un navigateur comme Chrome ou Firefox grâce au Selenium WebDriver.

Dans notre cas, nous allons nous en servir pour :

  • Lancer un browser à l’adresse d’Instagram
  • Entrer son nom d’utilisateur et mot de passe
  • Effectuer les actions que l’on veut une fois connecté

Les actions que vous pouvez faire sont pratiquement illimitées, vous pourrez naviguer de profil en profil, commenter des photos, les liker, suivre et vous désabonner de certaines personnes et bien plus !

Pour vous faciliter la vie et sélectionner le bon élement HTML, prenez l’habitude d’utiliser les XPath. Dans la console de Chrome, faites un clic droit sur le node HTML puis “Copier > Copier en tant que XPath”. Vous devrez peut-être mettre à jour ses XPath régulièrement quand Instagram fait des mises à jour et que les noms de classe changent.

Option #2 : Le Package InstaPy de Tim Grossmann

Option 2 InstaPy Bot Instagram

La seconde option est de trouver un projet open-source qui a déjà utilisé Selenium pour arriver à ses fins.

Heureusement pour nous, depuis des années un Package Python a réussi à s’imposer comme référence pour créer ses bot Instagram Python.

Il s’agit d’InstaPy de Tim Grossmann, une librairie Python basée sur Selenium qui automatise certaines actions sur Instagram dans le but de récolter plus de Likes, Commentaires, Followers et d’interactions en général.

Dans cet article, nous utiliserons InstaPy pour ne pas réinventer la roue, mais si vous êtes ici pour le challenge ou voulez vraiment développer votre bot de A à Z, vous pouvez suivre la structure que j’explique en utilisant Selenium.

Quelles actions peuvent faire un bot Instagram ?

Après des années de développement Open Source et près de 3000 commits par 250 collaborateurs, InstaPy est très évolué et abouti.

Avec ce bot, vous pourrez effectuer les actions de base comme liker des posts, vous abonner à des gens, commenter des photos mais aussi rejoindre des Instagram Pods spécifiques ou utiliser l’Intelligence artificielle pour reconnaître ce qu’il y a sur les photos et commenter en fonction.

La structure de base d’un bot Instagram

Disons que nous voulons avoir une compte sur la nourriture et le lifestyle végan.

Vous trouverez le code complet en fin d’article.

from instapy import InstaPy
from instapy import smart_run

insta_username = 'VOTRE_NOM_D_UTILISATEUR_INSTAGRAM'
insta_password = 'VOTRE_MOT_DE_PASS_INSTAGRAM'

session = InstaPy(
    username=insta_username,
	password=insta_password,
	headless_browser=True)  # Permet de ne pas ouvrir de navigateur et fonctionner de manière invisible

with smart_run(session):
    # Permet de définir quel type de profil vous voulez suivre, s'ils ont beaucoup d'abonnés, quel ratio following/followers etc
    session.set_relationship_bounds(
	    enabled=True,
		delimit_by_numbers=True,
		max_followers=5000,
		min_followers=50,
		min_following=100)

Éviter certains Hashtags Instagram que l’on ne veut pas suivre

Avec ce setter on va définir les Hashtags à éviter :

    session.set_dont_like(["nsfw"])

Définir les Followers Instagram à suivre automatiquement dans votre niche

On suivra 20% des comptes pour lesquels on vient d’aimer le contenu

    session.set_do_follow(True, percentage=20)

Comment aimer du contenu avec un bot instagram ?

Assez de préparations avec les setters, maintenant on va auto like le contenu que l’on veut en définissant des mots.

Un mot commençant par # sélectionnera les hashtags exacts.

Un mot simple vous fera aimer tous les # contenant ce mot. Par exemple bot vous fera aimer #botdiscord, #botinstagram ou encore #twitterbot.

Pour lancer l’action d’aimer par tags, on utilisera le code suivant :

    session.like_by_tags(['bot', 'discord', 'instagram'], amount=2)

Commenter automatiquement des publications Instagram

On va commenter 80% des posts qu’on like, avec des messages aléatoires :

    # Commenter des posts
    session.set_do_comment(enabled=True, percentage=80)

    session.set_comments([
	    u'Ça à l'air bon ! :heart_eyes:',
		u'Super photo ! :wink:',
		u'Magnifique !! :heart_eyes:',
		media='Photo')

Un Bot Instagram qui Follow et Unfollow

InstaPy gère aussi les désabonnements avec un système intelligent.

Vous pourrez donc vous désabonner des comptes Instagram qui ne vous suivent pas en retour :

    session.unfollow_users(
	    amount=500,
		nonFollowers=True, # Que des comptes qui ne vous suivent pas en retour
		style='FIFO', # "First In, First Out", on élimine les plus anciens "non-followers" d'abord
		unfollow_after=12 * 60 * 60, # Après 12 heures
		sleep_delay=601) # Pour éviter de trop spammer Instagram

Rejoindre un Instagram Pod pour plus d’engagement

Rejoindre un Instagram Pod de nourriture, sans commenter, juste des likes :

    session.join_pods(topic='food', engagement_mode='no_comments')

Comment faire tourner et héberger mon bot Python ?

Installer InstaPy

Vous avez maintenant une idée des fonctionnalités de bases qu’InstaPy est capable de faire. Voyons maintenant comment installer les packages nécessaires pour pouvoir commencer.

Vous pouvez installer ce le Package de Tim Grossmann avec PyPI mais il vous faudra d’abord avoir Python 3 sur votre machine et créer un environnement virtuel pour rester propre.

Installer Python 3 et son environnement virtuel

Si vous êtes sur Windows soyez sûr d’avoir Python 3 sur votre machine, si ce n’est pas le cas, téléchargez l’installateur complet sur le site officiel de Python.

Pour Mac OSX vous pouvez soit passer par votre installateur de packets préféré, soit faire comme pour Windows et télécharger l’installateur complet OSX sur le site officiel de Python.

Pour Linux, vous devriez déjà avoir Python 3 sur votre machine mais si ce n’est pas le cas, référerez-vous aux téléchargements sur le site officiel.

Si vous êtes sur Ubuntu, il y a une manipulation spéciale à faire que vous retrouvez en bas d’article dans la partie Hébergement sur DigitalOcean.

Une fois Python 3 bien présent sur votre machine, créez un environnement virtuel et installez InstaPy

python3 -m venv bot-insta-env
source bot-insta-env/bin/activate
pip install instapy

Le code source en entier est en bas d’article mais si vous voulez d’autres exemples, rendez-vous sur GitHub !

Héberger votre bot instagram chez vous gratuitement

Vous avez une vieille Raspberry Pi qui traîne dans un tiroir ? Génial, on va pouvoir installer notre script dessus et vous trouverez enfin une utilité à votre Raspberry Pi !

Pour atteindre mes 10 000 abonnés, j’ai fait tourner mon bot toutes les heures pendant des mois en devant parfois me connecter en SSH dessus pour affiner mon script et le relancer quand InstaPy avait besoin d’être mis à jour.

Utiliser un Raspberry Pi pour faire tourner InstaPy

Raspberry Pi pour votre Bot Instagram

L’architecture ARM des Raspberry Pi nécessite un petit ajustement, comme le driver fourni avec InstaPy qui simule la fenêtre internet n’est pas compatible.

Pour commencer, installons Firefox :

sudo apt-get install firefox-esr

Ensuite, installons le driver en question, Geckodiver :

wget https://github.com/mozilla/geckodriver/releases/download/v0.23.0/geckodriver-v0.23.0-arm7hf.tar.gz
tar -xvzf geckodriver-v*
chmod +x geckodriver
sudo cp geckodriver /usr/local/bin/

Vérifiez que /usr/local/bin est bien dans la variable PATH de votre .bashrc, .zshrc ou autre.

Puis installez InstaPy :

pip3 install instapy

Et voilà ! Vous pouvez faire tourner votre script et le relancer automatiquement à fréquence régulière avec un Cron Job.

Faire tourner InstaPy Sur Docker

Le plus simple est sûrement d’utiliser l’image Docker, vous éviterez tous les problèmes de compatibilité liés à votre OS.

Un fois Docker installé,

docker pull instapy/instapy:latest && \
docker run --name instapy \
  -v PATH_DE_VOTRE_SCRIPT_INSTAPY:/code/docker_quickstart.py \
  -v PATH_DE_VOTRE_INSTALLATION_INSTAPY:/code/InstaPy \
  -d instapy/instapy:latest

Avec PATH_DE_VOTRE_SCRIPT_INSTAPY le chemin vers votre fichier de bot en .py Et PATH_DE_VOTRE_INSTALLATION_INSTAPY le chemin vers l’installation d’InstaPy, si vous êtes dans un virtual env, c’est dans VOTRE_ENVIRONNEMENT_VIRTUEL/lib/python3.7/site-packages/InstaPy.

Faire tourner un programme Python sur le Cloud

Dans un Droplet Ubuntu DigitalOcean

Si vous préférez avoir votre script qui tourne dans le cloud pour pouvoir y accèder en SSH facilement de n’importe où, je vous recommande vivement DigitalOcean.

Si vous n’avez pas encore de compte vous pouvez utiliser mon lien d’affiliation pour recevoir 100 dollars de crédit, soit presque 2 ans d’hébergement gratuits.

Bonne nouvelle, la Droplet Ubuntu à $5 (4.40 euros) par mois avec son Giga de RAM est suffisante pour faire tourner un bot !

Installer InstaPy sur Ubuntu

Ensuite, il vous faudra installer plusieurs choses sur votre Droplet Ubuntu :

sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get -y install unzip python3-pip python3-dev build-essential libssl-dev libffi-dev xvfb
sudo pip3 install --upgrade pip
export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales
pip3 install --upgrade pip
cd ~
wget "https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb"
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt-get install -y -f
sudo rm google-chrome-stable_current_amd64.deb

Continuez à améliorer votre Bot avec le code complet !

Félicitations pour avoir été jusqu’au bout de cet article !

Pour vous récompenser, voici le code complet de notre bot instagram :

from instapy import InstaPy
from instapy import smart_run

insta_username = 'VOTRE_NOM_D_UTILISATEUR_INSTAGRAM'
insta_password = 'VOTRE_MOT_DE_PASS_INSTAGRAM'
TAGS_A_SUIVRE = []
TAGS_A_EVITER = []
POD = ''

session = InstaPy(
    username=insta_username,
	password=insta_password,
	headless_browser=True)  # Permet de ne pas ouvrir de navigateur et fonctionner de manière invisible

with smart_run(session):
    # Permet de définir quel type de profil vous voulez suivre, s'ils ont beaucoup d'abonnés, quel ratio following/followers etc
    session.set_relationship_bounds(
	    enabled=True,
		delimit_by_numbers=True,
		max_followers=5000,
		min_followers=50,
		min_following=100)

    # Permet de définir les Hashtags à éviter
    session.set_dont_like(TAGS_A_EVITER)

    # On suivra 20% des comptes pour lesquels on vient d'aimer le contenu
    session.set_do_follow(True, percentage=20)

    # Commenter des posts
    session.set_do_comment(enabled=True, percentage=80)

    session.set_comments([
	    u'Ça à l'air bon ! :heart_eyes:',
		u'Super photo ! :wink:',
		u'Magnifique !! :heart_eyes:',
		media='Photo')

    # Préparatifs terminés, on commence l'activité avec les likes
    # L'action d'aimer par tags
    session.like_by_tags(TAGS_A_SUIVRE, amount=2)

    # Se désabonner des comptes Instagram qui ne vous suivent pas en retour
    session.unfollow_users(
	    amount=500,
		nonFollowers=True, # Que des comptes qui ne vous suivent pas en retour
		style='FIFO', # "First In, First Out", on élimine les plus anciens "non-followers" d'abord
		unfollow_after=12 * 60 * 60, # Après 12 heures
		sleep_delay=601) # Pour éviter de trop spammer Instagram

    # Rejoindre un Instagram Pod de nourriture, sans commenter, juste des likes
    session.join_pods(topic=POD, engagement_mode='no_comments')

Vous voilà maintenant en possession de ce qui est certainement le meilleur bot instagram gratuit en 2021.

InstaPy vous permet d’aller beaucoup plus loin en rentrant dans des engagement pods, utiliser l’intelligence artificielle pour reconnaître le contenu des images et créer des commentaires intelligents et bien d’autres choses.

Je vous conseille de garder un oeil sur les mises à jours de la librairie sur Github comme Instagram change régulièrement son site et qu’InstaPy doit donc s’adapter à la nouvelle UI.

Bravo ! Vous avez pu développer un bot en python qui respecte votre stratégie pour grandir au mieux sur Instagram. Vous l’avez hébergé soit localement chez vous soit sur un service d’hébergement et vous pouvez maintenant vous concentrer sur ce qui est vraiment important !

APPRENEZ GRATUITEMENT À CODER EN MOINS DE 30 JOURS !
Vous voulez apprendre la programmation ?
Recevez mon ebook GRATUIT : "9 astuces pour apprendre à coder".
Découvrez si le code est fait pour vous !

Je m'appelle Thomas. Depuis ma sortie de la première promo de l'École 42, j'ai développé une app qui a été téléchargée plus de 400.000 fois. J'ai lancé près de 10 idées de startups et de nombreux autres business. Sur ce blogue, je vous apprends comment utiliser le Code pour devenir libre.