Limites de l'API d'Instagram

Bonjour à tous,
J’utilise un script tout simple qui a partir d’une liste d’ID utilisateurs donnée, les suis un par un avec un certains délai, en envoyant des requêtes à l’adresse
https://www.instagram.com/api/v1/friendship/create
Il y a t-il quelqu’un parmi vous qui connait les limites d’utilisation de cette API pour adapter au mieux mes délais pour ne suber aucun rate limit ?

Merci d’avance.

Salut Arthur,

Les limites API d’Instagram sont fortement limitées, surtout en ce moment avec les élections américaines qui arrivent.
Limite-toi à 30 follow/unfollow par jour si tu veux éviter des bloquages voir bannissement.

Instagram détecte assez facilement des scripts et donc tu peux te faire repérer et avoir des ennuis.

1 « J'aime »

Ok, merci !

Salut,

peut etre un partage de ton scrip tout simple?

Merci

Tan

import requests
import time
import random
import sys

base_url = 'https://www.instagram.com/api/v1/friendships/create/'
user_ids = [
    'id_utilisatteur_1',
    'id_utilisatteur_2',
    'id_utilisatteur_3',
]
headers = {
    #à copier à partir de l'outil inspecter du navigateur
}
data = {
    'container_module': 'profile',
    'nav_chain': 'PolarisFeedRoot%3AfeedPage%3A1%3Avia_cold_start%2CPolarisProfileNestedContentRoot%3AprofilePage%3A2%3Aunexpected'
}
for user_id in user_ids:
    url = f'{base_url}{user_id}/'
    data['user_id'] = user_id

    response = requests.post(url, headers=headers, data=data)
    if(response.status_code != 200):
        print(f"Erreur {response.status_code}: Impossible de suivre l'utilisateur.")
        print("Fin du script")
        sys.exit(1)

    print(f"ID utilisateur: {user_id}")
    print(f"Statut de la requête: {response.status_code}")
    print(f"Réponse: {response.text}")
    print("---------------------------------------")
    time.sleep(random.randint(31,102))
    

print("Fin du scrippt, les "+len(user_ids)+" utilisateurs on étés suivis.")
sys.exit(1)

Pistes améliorations :

  • Prendre en entrée un fichier csv (j’en ai un avec id, username, name, isPrivate)
  • Ne prendre que les comptes privés pour plus d’efficacité
  • Envoyer une requête pour obtenir les infos de l’utilisateur, pour le passer si c’est un gros compte (+1000 followers) ou un compte creator/buisness, si il nous suit déjà ou si une demande a déjà été faite
  • Inscrire dans le fichiers CSV les demandes qui ont été faites pour ne pas redemander
  • A partir des notifications, se désabonner des comptes qui nous ont suivis en retour, l’inscrire dans le fichier pour se souvenir que ces comptes sont susceptibles de de followback
  • Ici, lorsque le script rencontre une erreur, il s’arrête complètement, il me faudrait plus de détail sur les codes d’erreurs pour pouvoir continuer si ce n’est pas une erreur liée à un ratelimit ou une détection d’automatisation.

Et j’ai simplifié le code, normalement il y a une barre de progression.
Je fonctionne avec les ids et un fichier CSV, car j’ai aussi un script qui obtient la liste des followers et qui les inscris dans un fichier, avec les infos ennoncées plus haut.

Si vous voulez en discuter plus en détail je suis dispo.

2 « J'aime »