jsonscraper

Como fazer scraping de IG com Python

Um passo a passo orientado à produção com mapa de endpoints, estratégia de cache e exemplos de implementação.

Política editorial Comunique um erro

Este guia mostra um fluxo de trabalho de dados IG de primeira produção usando o mapa de endpoint jsonscraper, com exemplos de respostas reais e opções práticas de arquitetura.

Para cargas de trabalho de produção, o principal benefício é a profundidade do endpoint, além do suporte a cache_timeout em rotas importantes, o que ajuda a reduzir chamadas duplicadas e queima de cota.

O que você vai construir

  • Requisições IG assinadas em Python com auth por license_key.
  • Validação rota por rota da coleção Postman até o script de produção.
  • Paginação segura por cursor com controle explícito de cache_timeout.

Início rápido no Postman

Comece pela coleção oficial de IG, defina license_key uma vez e execute requisições em poucos cliques antes de escrever código.

Passo 1

Fazer fork

Use a coleção Postman de IG ou TikTok como base do seu workspace.

Passo 2

Definir chave

Configure license_key uma vez em variável de ambiente.

Passo 3

Automatizar

Exporte snippets ou execute fluxos de agentes de IA sobre requisições prontas.

Todas as requisições da API

Mapa completo de endpoints da coleção. Expanda cada classe e clique em uma rota para ver parâmetros e exemplos de resposta.

Usuario Midia Historia Destaque Localizacao Hashtag Pesquisar Pesquisa FB Audio (Musica) API Web (GraphQL)
Usuario (30 pontos finais)
Midia (18 pontos finais)
Historia (6 pontos finais)
Destaque (3 pontos finais)
Localizacao (6 pontos finais)
Hashtag (8 pontos finais)
Pesquisar (11 pontos finais)
Pesquisa FB (2 pontos finais)
Audio (Musica) (2 pontos finais)
API Web (GraphQL) (11 pontos finais)
Veja a lista completa de endpoints no Postman

Exemplos em Python da coleção

Esses exemplos usam o mesmo padrão de autenticação do Postman: license_key nos parâmetros de query.

Exemplo 1: obter usuário por username (GET /v1/user/by/username)

import requests

BASE_URL = "https://ig.jsonscraper.com"
LICENSE_KEY = "YOUR_LICENSE_KEY"

params = {
    "license_key": LICENSE_KEY,
    "username": "apple",
    "cache_timeout": 0,
}

r = requests.get(f"{BASE_URL}/v1/user/by/username", params=params, timeout=30)
r.raise_for_status()
data = r.json()

print(data["status"], data["ig"]["username"], data["ig"]["pk"])
{
  "status": "ok",
  "limits_info": {"requests_count": 7098, "requests_limit": 2000300},
  "rate_limit_reached": false,
  "ig": {"pk": 5821462185, "username": "apple", "full_name": "apple"}
}

Exemplo 2: obter stories do usuário por username (GET /v1/user/stories/by/username)

import requests

BASE_URL = "https://ig.jsonscraper.com"
LICENSE_KEY = "YOUR_LICENSE_KEY"

params = {
    "license_key": LICENSE_KEY,
    "username": "applemusic",
    "cache_timeout": 0,
}

r = requests.get(f"{BASE_URL}/v1/user/stories/by/username", params=params, timeout=30)
r.raise_for_status()
data = r.json()

stories = data.get("ig", [])
print("stories:", len(stories))

Padrão de requisições Python (license key + paginação)

Use um helper de requisições compartilhado para manter assinatura e paginação consistentes em todos os endpoints.

import requests

BASE_URL = "https://ig.jsonscraper.com"
LICENSE_KEY = "YOUR_LICENSE_KEY"

def call(endpoint: str, **params):
    q = {"license_key": LICENSE_KEY, "cache_timeout": 0, **params}
    res = requests.get(f"{BASE_URL}{endpoint}", params=q, timeout=30)
    res.raise_for_status()
    return res.json()

page1 = call("/v1/user/medias/chunk", user_id="5821462185")
next_max_id = page1.get("next_max_id")
if next_max_id:
    page2 = call("/v1/user/medias/chunk", user_id="5821462185", max_id=next_max_id)

Notas de implementação

  • Inclua sempre license_key em cada requisição.
  • Use cache_timeout de forma explícita em verificações recorrentes.
  • Persista campos de cursor junto com o contexto da consulta.
  • Amplie a cobertura de rotas por classes após validar a base.

Pronto para lançar seu fluxo API?

Escolha uma API, teste endpoints no Postman e lance seu fluxo em minutos.

People

No people listed for this article yet.

Keep readingComo fazer scraping de TikTok com Python
Read the next article

Transforme o que lê numa integração funcional

Explore as APIs de dados sociais da jsonscraper, teste pedidos e crie o seu próximo fluxo de trabalho.

Explorar APIs