Pular para o conteúdo

API e scraper do Twitter (X) para pesquisa acadêmica

Busque em todo o histórico desde 2006, reidrate IDs de posts de 100 em 100, obtenha timelines, respostas e seguidores. O acesso acadêmico é adaptado ao seu estudo: de requisições concedidas ao seu projeto a grandes descontos.

Sem cartão de crédito, e elas nunca expiram.

Para preciso de cerca de

Cerca de 2 horaspara coletar a 20 requisições por segundo
US$ 15.000na API oficial do X
a partir de US$ 210na Sorsa API, antes do acesso acadêmico

O acesso acadêmico vai além: adaptado ao seu estudo, de requisições concedidas a grandes descontos.

Fazer o pedido com este plano

Acesso acadêmico, montado em torno do seu estudo

Requisições concedidas para o seu estudo

Adicionamos à sua conta da Sorsa API as requisições de que o projeto precisa.

Um grande desconto em um plano

Para projetos longos ou grandes: qualquer plano a um preço acadêmico.

O que todo projeto aprovado recebe

  • Todos os endpoints
  • 20 requisições por segundo
  • A mesma documentação e a mesma API de todos
  • Respostas rápidas da equipe

Quem pode fazer o pedido

  • Doutorandos
  • Mestrandos
  • Docentes
  • Pós-doutorandos
  • Equipes de pesquisa
  • Pesquisadores de ONGs e redações

Pesquisa não comercial em qualquer área, com pedido feito de um e-mail institucional.

Faça o pedido em cerca de dois minutos. Enquanto isso, suas 100 requisições grátis funcionam em todos os endpoints.

Pedir acesso acadêmico

Todos os métodos de que o seu estudo precisa

Uma chave de API, os mesmos endpoints para 2006 e para hoje de manhã.

  • Busca no histórico

    Corpora por palavra-chave, janelas de eventos, séries temporais longas.

    "heat wave" lang:en since:2022-07-01 until:2022-08-01 -filter:nativeretweets

    Cerca de 20 posts por requisição, até 2006

  • Posts por ID

    Reidrate um dataset compartilhado ou replique um corpus publicado.

    POST /tweet-info-bulk {"tweet_links": [100 IDs]}

    100 posts por requisição, cada um com seu autor

  • Timelines de contas

    Painéis de políticos, jornalistas ou organizações.

    from: + datas, ou /user-tweets para todo o histórico de uma conta

    Cerca de 20 posts por requisição, sem teto de 3.200 posts

  • Conversas

    Árvores de respostas, cadeias de quotes, quem deu retweet.

    /comments, /quotes, /retweeters

    Cerca de 20 por requisição

  • Redes

    Seguidores e seguidos de qualquer conta pública.

    /followers?username=…

    200 perfis por página

  • Perfis e contexto da conta

    Perfis de 100 em 100; país, mudanças de username e verificação em Sobre esta conta.

    /info-batch, /about

    100 perfis por requisição

  • Listas, Comunidades, Spaces

    Uma Lista do X acompanha até 5.000 contas; posts e membros de comunidades; metadados de Spaces.

    /list-tweets?list_id=…

    Cerca de 20 posts por requisição

Operadores de busca, paginação e tamanhos de página estão na documentação: Dados históricos, Operadores de busca, Posts por ID.

Cada post chega com suas variáveis

Coastal Climate Lab@coastal_climate_lab

Em resposta a @heat_records_archive

Nosso dataset aberto saiu: 1,2 milhão de posts sobre as ondas de calor de 2022 na Europa, com os IDs dos posts e o código para reidratá-los. #heatwave

Posts por dia, de junho a agosto de 2022

10:42, 18 de ago. de 2023

96,4 mil visualizações211 itens salvos

42 respostas318 reposts27 quotes1,2 mil curtidas

userusername, followers_count, created_at, verified, location
conversation_id_strin_reply_to_tweet_idO lugar dele em uma thread
full_textlangCada palavra e o idioma
entitiesMídia e links
created_atData da postagem, com segundos
view_countbookmark_countVisualizações e itens salvos
likes_countretweet_countreply_countquote_countEngajamento, como está no momento
Posts antigos vêm com os mesmos campos dos de hoje.

Planeje seu desenho de pesquisa levando isto em conta

  • Posts apagados e contas protegidas não são retornados. Uma lista reidratada volta menor que a original.

  • Os contadores são os de hoje. Curtidas, visualizações e seguidores são os do momento da coleta; para ver a evolução, colete de forma programada e guarde cada snapshot.

  • Os perfis são os atuais. Um post de 2014 vem com o perfil do autor como ele é agora.

  • Você consulta, nada chega por streaming. Os posts novos chegam quando você pede; uma requisição lê uma Lista do X de até 5.000 contas.

  • Não disponível: quem curtiu um post, curtidas ou itens salvos de um usuário, DMs, listas de seguidores do passado.

Teste seu intervalo de datas com as requisições grátis antes de planejar a coleta completa.

De uma lista de IDs a um dataset

rehydrate.py
import csv, json, time, requests

URL = "https://api.sorsa.io/v3/tweet-info-bulk"
KEY = "YOUR_API_KEY"
ids = [row[0] for row in csv.reader(open("tweet_ids.csv"))]

with open("tweets.ndjson", "w") as out:
    for i in range(0, len(ids), 100):
        while True:
            r = requests.post(URL, headers={"ApiKey": KEY},
                              json={"tweet_links": ids[i:i + 100]})
            if r.status_code != 429:
                break
            time.sleep(1)  # 20 requests per second per key
        r.raise_for_status()
        for tweet in r.json()["tweets"]:
            out.write(json.dumps(tweet) + "\n")
  • Um milhão de IDs leva cerca de oito minutos a 20 requisições por segundo.
  • Requisições com falha nunca são cobradas.
  • Vai escrever com um assistente de IA? Dê ao Claude Code, ao Cursor ou ao Codex nosso arquivo de documentação, ou conecte o servidor MCP. Crie com IA

Para o seu comitê de ética e a sua seção de métodos

O que os avaliadores perguntam

Quais dados?
Apenas posts e perfis públicos. Sem contas protegidas, sem DMs.
Há alguma interação?
Nenhuma. A Sorsa API é somente leitura: nunca posta, curte, segue nem envia mensagens.
De quem é a conta?
Nenhuma conta ou login do X é usado, nem o seu nem o de ninguém.
O que o fornecedor guarda?
Quais requisições você fez, por um ano; as respostas completas, por 30 dias.
Quem fica sabendo do projeto?
O X nunca fica sabendo quem está perguntando: sua chave, sua conta e sua identidade ficam conosco.
Onde fica a sua cópia?
Onde o seu plano de gestão de dados determinar. Ela é sua.
Documentação?
Sob pedido, escrevemos uma carta curta sobre a fonte dos dados para o seu comitê de ética.

O parágrafo de métodos

2.1 Coleta de dados

Os posts foram coletados por meio da Sorsa API (https://api.sorsa.io), uma API independente para dados públicos do X (Twitter), usando a busca em todo o histórico para o período de 1º de janeiro a 31 de março de 2024.

Pedir acesso acadêmico

Cerca de dois minutos. Uma pessoa da nossa equipe lê cada pedido e responde por e-mail.

O que acontece depois

  1. 1

    Envie o formulário.

  2. 2

    Nós lemos.

    Se algo não estiver claro, perguntamos.

  3. 3

    Combinamos seu acesso.

    As requisições de que o estudo precisa, ou um grande desconto, durante todo o projeto.

  4. 4

    Você coleta.

    O acesso aparece na sua conta da Sorsa API; toda chave roda a 20 requisições por segundo.

Enquanto isso, suas 100 requisições grátis funcionam em todos os endpoints. Comece com 100 requisições grátis

Prefere e-mail? Escreva para contacts@sorsa.io do seu endereço institucional.

1Sobre você

O endereço da sua universidade ou instituto.

Universidade, instituto ou organização

Função

Página do docente, do laboratório, ORCID ou Google Scholar.

2Seu estudo

De duas a cinco frases bastam.

Dados de que você precisa
Mais ou menos quantos posts ou perfis?
Prazos
Quando você precisa dos dados?
Quanto tempo dura o projeto?
Como o projeto é financiado?Opcional

Isso nos ajuda a montar a oferta, mas nunca a decide.

Usamos estes dados só para avaliar seu pedido e responder. Política de Privacidade

Ou envie um e-mail para contacts@sorsa.io do seu endereço institucional.

O que os pesquisadores perguntam

Doutorandos, mestrandos, docentes, pós-doutorandos e equipes de pesquisa de universidades e institutos de pesquisa, para pesquisa não comercial em qualquer área. Faça o pedido do seu e-mail institucional.

Acesso adaptado ao seu estudo: das requisições de que ele precisa, concedidas à sua conta, a um grande desconto em um plano. Todos os endpoints, 20 requisições por segundo, a mesma documentação e o mesmo suporte de todos os clientes.

Uma pessoa da nossa equipe lê seu pedido e responde por e-mail. Se algo não estiver claro, perguntamos; depois combinamos o volume e o período com você e adicionamos o acesso à sua conta da Sorsa API.

Sim. Toda conta recebe 100 requisições grátis: sem cartão, nunca expiram e funcionam em todos os endpoints. São até 10.000 posts por ID ou 20.000 perfis de seguidores, o bastante para testar suas consultas.

Faça o pedido com o e-mail que você usa e adicione um link para sua página de docente, de laboratório, ORCID ou Google Scholar, para podermos ver sua afiliação.

Até 2006. A busca em todo o histórico aceita os operadores do próprio X: from:, to:, since:, until:, lang:, frases exatas, hashtags e filtros de engajamento. As timelines de contas voltam até o primeiro post, sem teto de 3.200 posts.

Sim: 100 IDs por requisição, cada post com o perfil completo do autor. Um milhão de IDs exige 10.000 requisições, cerca de oito minutos a 20 requisições por segundo. Posts apagados ou que se tornaram privados desde a coleta original não voltam, então espere menos posts que IDs.

Posts apagados, contas protegidas, DMs, listas de quem curtiu um post, curtidas e itens salvos de um usuário e listas de seguidores como eram no passado. Contadores e perfis são os do momento da coleta. Nada chega por streaming: você consulta, e uma requisição lê uma Lista do X de até 5.000 contas.

Que os dados são posts e perfis públicos; que a Sorsa API é somente leitura e nunca posta, curte, segue nem envia mensagens; que nenhuma conta ou login do X é usado; e que você não entra em contato com as pessoas presentes nos dados. Guardamos um log das suas requisições por um ano e as respostas completas por 30 dias. Sob pedido, escrevemos uma carta curta sobre a fonte dos dados.

Compartilhe os IDs dos posts e o seu código de coleta: qualquer pessoa pode reidratá-los e conferir seu trabalho. O quanto mais você compartilha depende da sua aprovação ética e do seu plano de gestão de dados.

Na sua seção de métodos: “Os dados foram coletados por meio da Sorsa API (https://api.sorsa.io), uma API independente para dados públicos do X (Twitter).” O BibTeX está na seção 5 desta página.

Sim. Sua conta tem várias chaves de API: dê uma a cada pessoa e veja o uso de cada chave no painel.

Sim. Avise no pedido e providenciamos uma nota fiscal para o seu projeto.

O X encerrou o programa Academic Research em 2023. A API de pagamento por uso cobra US$ 0,005 por post e US$ 0,010 por perfil; a via da UE pela Lei de Serviços Digitais cobre apenas pesquisa sobre riscos sistêmicos na UE, com um pedido separado. A Sorsa API funciona para qualquer área e tema, com uma chave e sem conta de desenvolvedor do X.

A TwitterAPI.io reembolsa metade do que um projeto de pesquisa gasta, até US$ 200, depois do pagamento. A Sorsa API adapta o acesso ao seu estudo antes da coleta, de requisições concedidas a grandes descontos.

Então um plano é o ideal: posts a partir de US$ 0,014 por 1.000, todos os endpoints em todos os planos. Para volumes maiores, fale com vendas.

API e scraper do Twitter (X) para pesquisa acadêmica

Acesso acadêmico adaptado ao seu estudo, de requisições concedidas a grandes descontos.

Acesso acadêmico, montado em torno do seu estudo

  • Requisições concedidas para o seu estudoAdicionamos à sua conta da Sorsa API as requisições de que o projeto precisa.
  • Um grande desconto em um planoPara projetos longos ou grandes: qualquer plano a um preço acadêmico.
Pedir acesso acadêmico

Todos os métodos de que o seu estudo precisa

Uma chave de API, os mesmos endpoints para 2006 e para hoje de manhã.

Cada post chega com suas variáveis

Coastal Climate Lab@coastal_climate_lab
user

Em resposta a @heat_records_archive

in_reply_to_tweet_id

Nosso dataset aberto já saiu: 1,2 milhão de posts sobre as ondas de calor europeias de 2022, com os IDs dos posts e o código para reidratá-los. #heatwave

full_text

10:42, 18 de ago. de 2023

created_at

42 Respostas318 Reposts27 Citações1,2 mil Curtidas

likes_count …

Posts antigos vêm com os mesmos campos dos de hoje.

De uma lista de IDs a um dataset

rehydrate.py
import csv, json, time, requests

URL = "https://api.sorsa.io/v3/tweet-info-bulk"
KEY = "YOUR_API_KEY"
ids = [row[0] for row in csv.reader(open("tweet_ids.csv"))]

with open("tweets.ndjson", "w") as out:
    for i in range(0, len(ids), 100):
        while True:
            r = requests.post(URL, headers={"ApiKey": KEY},
                              json={"tweet_links": ids[i:i + 100]})
            if r.status_code != 429:
                break
            time.sleep(1)  # 20 requests per second per key
        r.raise_for_status()
        for tweet in r.json()["tweets"]:
            out.write(json.dumps(tweet) + "\n")
  • Um milhão de IDs leva cerca de oito minutos a 20 requisições por segundo.
  • Requisições com falha nunca são cobradas.
  • Escrevendo com um assistente de IA? Crie com IA

Para o seu comitê de ética e a sua seção de métodos

Quais dados?

Apenas posts e perfis públicos. Sem contas protegidas, sem DMs.

Há alguma interação?

Nenhuma. A Sorsa API é somente leitura: nunca posta, curte, segue nem envia mensagens.

De quem é a conta?

Nenhuma conta ou login do X é usado, nem o seu nem o de ninguém.

O que o fornecedor guarda?

Quais requisições você fez, por um ano; as respostas completas, por 30 dias.

Quem fica sabendo do projeto?

O X nunca fica sabendo quem está perguntando: sua chave, sua conta e sua identidade ficam conosco.

Onde fica a sua cópia?

Onde o seu plano de gestão de dados determinar. Ela é sua.

Documentação?

Sob pedido, escrevemos uma carta curta sobre a fonte dos dados para o seu comitê de ética.

Pedir acesso acadêmico

Cerca de dois minutos. Uma pessoa da nossa equipe lê cada uma.

  1. 1Enviar
  2. 2Nós lemos
  3. 3Combinamos
  4. 4Você coleta
Comece com 100 requisições grátis

Prefere e-mail? Escreva para contacts@sorsa.io com o seu endereço institucional.

O que os pesquisadores perguntam