Reddit, a autoproclamada "página inicial da internet", tornou-se um hub digital para milhões de usuários em todo o mundo. Com sua vasta variedade de comunidades conhecidas como subreddits, o Reddit abrange praticamente todos os assuntos imagináveis, de notícias e política a hobbies e interesses de nicho. Nos bastidores, impulsionando essa plataforma dinâmica, está a API do Reddit (Application Programming Interface). Essa poderosa ferramenta permite que desenvolvedores aproveitem a riqueza de dados e funcionalidades oferecida pelo Reddit, abrindo um mundo de possibilidades para criar aplicações inovadoras, bots e ferramentas de análise de dados.
Neste guia completo, vamos explorar em profundidade a API do Reddit, abordando seus recursos, processo de configuração e casos de uso práticos. Seja você um desenvolvedor experiente que deseja criar o próximo grande app do Reddit ou um entusiasta de dados interessado em analisar tendências e sentimentos em toda a plataforma, este guia fornecerá o conhecimento e as ferramentas para liberar todo o potencial da API do Reddit.
Principais conclusões: A API do Reddit permite que desenvolvedores acessem os vastos dados do Reddit e criem aplicações inovadoras, oferecendo endpoints para pesquisar comentários e publicações com diversos parâmetros de refinamento. A configuração envolve criar uma conta, registrar uma aplicação e realizar autenticação OAuth2, enquanto bibliotecas como PRAW e Snoowrap simplificam o desenvolvimento. O novo modelo de preços em níveis do Reddit pode afetar apps de terceiros e potencialmente exigir ajustes de negócio, mas a plataforma continua comprometida em apoiar desenvolvedores externos enquanto garante sustentabilidade. O uso responsável da API, o respeito à privacidade dos usuários e a conformidade com os termos de serviço do Reddit são essenciais para desenvolvedores que utilizam a API para finalidades diversas, como análise de sentimento, acompanhamento de tendências e pesquisa acadêmica.
Você pode testar a API do Reddit gratuitamente no Latenode — a melhor plataforma de automação para você 🚀
O que é uma API?
Antes de entrarmos nos detalhes da API do Reddit, vamos entender o que é uma API e por que ela é importante. Uma API, ou Application Programming Interface, é essencialmente um conjunto de regras, protocolos e ferramentas que define como diferentes componentes de software devem interagir entre si. Ela especifica os tipos de solicitações que podem ser feitas, os formatos de dados a serem usados e as convenções a serem seguidas ao realizar essas solicitações.
Pense em uma API como um contrato entre dois sistemas de software, descrevendo como eles podem se comunicar e compartilhar dados e funcionalidades. Ela atua como intermediária, permitindo que desenvolvedores acessem os recursos e dados de outro sistema sem precisar entender os detalhes complexos de sua implementação.
Por que as APIs são importantes?
As APIs desempenham um papel crucial ao permitir integração e interoperabilidade entre diferentes aplicações de software. Elas oferecem uma forma de desenvolvedores aproveitarem os recursos de serviços e plataformas existentes, poupando tempo e esforço no processo de desenvolvimento.
Imagine criar um aplicativo de previsão do tempo que exibe dados meteorológicos em tempo real para diferentes cidades. Em vez de instalar suas próprias estações meteorológicas e coletar dados, você pode usar uma API meteorológica fornecida por um serviço confiável. Ao fazer solicitações à API, você pode obter informações meteorológicas atualizadas e integrá-las perfeitamente ao seu app.
As APIs também promovem inovação e colaboração. Ao abrir suas plataformas para desenvolvedores, empresas como o Reddit possibilitam a criação de um ecossistema próspero de aplicações e serviços de terceiros. Isso não beneficia apenas os desenvolvedores, que podem criar soluções sobre uma infraestrutura existente, como também melhora a experiência do usuário ao oferecer uma variedade maior de ferramentas e recursos.
O que é o Reddit?
Antes de explorarmos a API do Reddit, vamos analisar o próprio Reddit mais de perto. O Reddit é uma plataforma de agregação de notícias sociais, classificação de conteúdo e discussões que conquistou milhões de usuários em todo o mundo. Ele funciona como um hub de comunidades, conhecidas como subreddits, onde os usuários podem compartilhar, discutir e votar em conteúdos relacionados a temas específicos.
Em sua essência, o Reddit é construído em torno de conteúdo gerado por usuários. Usuários registrados, conhecidos como Redditors, podem enviar diversos tipos de conteúdo, incluindo posts de texto, imagens, vídeos e links para sites externos. Outros usuários podem então interagir com esse conteúdo dando votos positivos ou negativos, o que determina sua visibilidade e classificação dentro da comunidade.
Um dos recursos que definem o Reddit é seu sistema de comentários aninhados. Os usuários podem comentar em posts e responder a outros comentários, criando discussões em tópicos que podem atingir vários níveis de profundidade. Essa estrutura incentiva conversas significativas e permite que diferentes perspectivas sejam compartilhadas e debatidas.
A vasta rede de subreddits do Reddit abrange uma variedade incrível de temas, desde interesses populares como notícias, política e entretenimento até hobbies de nicho e subculturas pouco conhecidas. Com mais de 100.000 subreddits ativos, existe uma comunidade para praticamente qualquer interesse imaginável.
O que é a API do Reddit
Agora que entendemos melhor o Reddit, vamos nos aprofundar na API do Reddit. A API do Reddit é uma ferramenta poderosa que permite que desenvolvedores interajam programaticamente com a plataforma, acessem seus dados e criem aplicações que ampliam e aprimoram a experiência no Reddit.
A API disponibiliza um conjunto de endpoints que permite aos desenvolvedores recuperar dados do Reddit, como posts, comentários, subreddits e informações de usuários. Ela também permite realizar programaticamente ações como votar, comentar e enviar mensagens.
Uma das principais vantagens da API do Reddit é sua documentação e suporte abrangentes. O Reddit fornece documentação detalhada com os endpoints disponíveis, formatos de solicitação e estruturas de resposta. Além disso, há uma comunidade ativa de desenvolvedores que contribui com bibliotecas, ferramentas e recursos para tornar o trabalho com a API mais fácil e eficiente.
Como configurar a API do Reddit?
Para começar a usar a API do Reddit, você precisará configurar alguns itens. Veja um guia passo a passo para começar:
![]()
- Crie uma conta no Reddit: se você ainda não tem uma conta no Reddit, acesse https://www.reddit.com e crie uma. Você precisará de uma conta para criar uma aplicação de API.
- Acesse a página Apps: depois de fazer login, vá até a seção "Apps" nas preferências da sua conta. Você pode acessá-la diretamente em https://www.reddit.com/prefs/apps.
- Crie uma nova aplicação: clique no botão "Create App" ou "Create Another App" para iniciar o processo de criação de uma nova aplicação de API.
- Preencha os detalhes da aplicação: forneça um nome e uma descrição para sua aplicação. Escolha o tipo de aplicação adequado de acordo com seu caso de uso (app web, app instalado ou script). Defina a URI de redirecionamento, se aplicável (isso é necessário para fins de autenticação).
- Obtenha o ID do cliente e o segredo do cliente: após criar a aplicação, você receberá um ID do cliente e um segredo do cliente. Anote essas credenciais, pois elas serão usadas para autenticar suas solicitações à API.
![]()
Com essas etapas concluídas, você está pronto para começar a interagir com a API do Reddit!
Criando um app
Ao criar um app na plataforma da API do Reddit, você terá três opções para escolher, dependendo do tipo de aplicação que está desenvolvendo:
- App web: escolha esta opção se você estiver desenvolvendo uma aplicação web que interagirá com dados do Reddit. Pode ser um site que exibe conteúdo do Reddit ou uma ferramenta que realiza ações em nome dos usuários.
- App instalado: selecione esta opção se estiver criando uma aplicação que será instalada em dispositivos, como um app móvel ou uma aplicação para desktop. Apps instalados têm um fluxo de autenticação diferente dos apps web.
- Script: se você estiver escrevendo um script ou bot que interagirá com dados do Reddit, escolha esta opção. Scripts são normalmente usados para tarefas de automação ou análise de dados.
Depois de selecionar o tipo de app adequado, preencha os detalhes obrigatórios, como nome, descrição e URI de redirecionamento, se aplicável. A URI de redirecionamento é importante para o processo de autenticação, pois especifica para onde o usuário deve ser redirecionado após conceder permissão à sua aplicação.
Depois de criar o app, você receberá um ID do cliente e um segredo do cliente. O ID do cliente é um identificador exclusivo da sua aplicação, enquanto o segredo do cliente é usado para autenticar sua aplicação ao fazer solicitações à API. Mantenha essas credenciais protegidas, pois elas concedem acesso às permissões da sua aplicação.
Obtendo um token de acesso da API do Reddit
Para fazer solicitações autenticadas à API do Reddit, você precisa obter um token de acesso. Um token de acesso é uma credencial que comprova que sua aplicação recebeu permissão para acessar a API em nome de um usuário.
O Reddit usa o protocolo OAuth2 para autenticação. O OAuth2 é um padrão amplamente adotado que permite aos usuários conceder acesso limitado aos seus recursos sem compartilhar suas credenciais de login. Ele envolve uma série de etapas para obter um token de acesso:
- Solicitação de autorização: sua aplicação redireciona o usuário para a página de autorização do Reddit, especificando as permissões desejadas (escopos) e a URI de redirecionamento.
- Autorização do usuário: o usuário faz login em sua conta do Reddit, se ainda não estiver conectado, e recebe o prompt de autorização. Ele pode revisar as permissões solicitadas pela sua aplicação e optar por conceder ou negar o acesso.
- Código de autorização: se o usuário conceder acesso, ele será redirecionado de volta para a URI de redirecionamento especificada, junto com um código de autorização.
- Troca por token de acesso: sua aplicação troca o código de autorização por um token de acesso fazendo uma solicitação POST ao endpoint de token da API do Reddit. Essa solicitação inclui seu ID do cliente, segredo do cliente e o código de autorização.
- Resposta do token de acesso: se a troca for bem-sucedida, a API do Reddit responde com um token de acesso, que pode ser usado para fazer solicitações autenticadas em nome do usuário.
Veja um exemplo de como obter um token de acesso usando Python e a biblioteca requests:
import requests
# Set up the necessary parameters
client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"
username = "YOUR_REDDIT_USERNAME"
password = "YOUR_REDDIT_PASSWORD"
user_agent = "YOUR_APP_NAME/VERSION (by /u/YOUR_REDDIT_USERNAME)"
# Make the POST request to obtain the access token
auth = requests.auth.HTTPBasicAuth(client_id, client_secret)
data = {
"grant_type": "password",
"username": username,
"password": password
}
headers = {"User-Agent": user_agent}
response = requests.post("https://www.reddit.com/api/v1/access_token",
auth=auth, data=data, headers=headers)
# Extract the access token from the response
access_token = response.json()["access_token"]
Neste exemplo, você precisa substituir "YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET", "YOUR_REDDIT_USERNAME", "YOUR_REDDIT_PASSWORD" e "YOUR_APP_NAME/VERSION (by /u/YOUR_REDDIT_USERNAME)" pelas suas credenciais reais e pela string do seu agente de usuário.
Depois de ter o token de acesso, você pode incluí-lo no cabeçalho Authorization das solicitações subsequentes à API para autenticá-las.
Como automatizar a coleta de dados do Reddit e a análise de sentimento com o Latenode
![]()
Uma das aplicações mais poderosas da API do Reddit é a automação da coleta de dados e da análise de sentimento. Com o Latenode, você pode configurar fluxos sofisticados que coletam automaticamente comentários do Reddit, analisam seus sentimentos e armazenam os resultados para análises posteriores. Isso garante que seus processos de análise de dados permaneçam eficientes e oportunos, ampliando sua capacidade de extrair insights dos dados do Reddit.
Por exemplo, você pode criar um fluxo que coleta automaticamente comentários de um subreddit específico, analisa o sentimento de cada comentário e armazena os resultados em um banco de dados. Essa abordagem simplificada não só melhora a coleta de dados, como também economiza o tempo da sua equipe, permitindo que ela se concentre em interpretar os resultados em vez de coletar e analisar dados manualmente.
Você pode saber mais sobre este script e a integração com o Latenode neste artigo. A integração com o Latenode oferece alguns benefícios principais:
- Facilidade de uso: o Latenode simplifica o processo de uso da API do Reddit, facilitando para usuários não técnicos a automação de tarefas de coleta de dados.
- Preços flexíveis: os usuários podem escolher entre diferentes planos do Latenode, com custos e recursos variados, para atender melhor às suas necessidades.
- Soluções completas: a integração do Latenode com o Reddit fornece acesso a uma ampla variedade de recursos de coleta e análise de dados.
- Personalização: os usuários podem adaptar as integrações com o Reddit às suas necessidades específicas, permitindo soluções de automação personalizadas e alinhadas aos objetivos de negócio.
Exemplo de fluxo do Reddit: automatizando a coleta de comentários e a análise de sentimento
Imagine transformar automaticamente cada comentário relevante do Reddit em um ponto de dados para análise de sentimento. Com o Latenode, isso se torna realidade. Nossa plataforma garante a coleta de comentários do subreddit certo, analisa seus sentimentos e armazena os resultados, assegurando que nenhum dado importante seja perdido.
![]()
Esta imagem mostraria uma representação visual do fluxo na interface do Latenode, com nós conectados representando cada etapa do processo, da coleta de dados à análise de sentimento e ao armazenamento.
Etapas do fluxo
- Agendamento: o fluxo é agendado para ser executado a cada hora, garantindo o processamento oportuno de novos comentários. Isso assegura atualizações regulares e análises rápidas dos comentários do Reddit.
- Recuperação de comentários: envie uma solicitação HTTP GET à API do Reddit para recuperar comentários de um subreddit específico. Essa solicitação inclui os cabeçalhos necessários para garantir autenticação adequada e tratamento correto do tipo de conteúdo.
- Processamento de comentários: ao receber uma resposta com sucesso, o Latenode processa os dados JSON recebidos da API, extraindo informações necessárias dos comentários, como ID, texto, autor e carimbo de data e hora.
- Análise de sentimento: usando os dados extraídos, o Latenode realiza a análise de sentimento de cada comentário. Isso envolve analisar o texto de cada comentário para determinar se o sentimento é positivo, neutro ou negativo.
- Armazenamento dos resultados: adicione um nó de banco de dados para salvar os comentários juntamente com os resultados da análise de sentimento. Configure o nó de banco de dados para armazenar campos relevantes, como texto do comentário, autor, carimbo de data e hora e sentimento.
- Notificação ao cliente: envie notificações com base nos resultados da análise de sentimento, se necessário. Isso pode incluir alertar uma equipe caso haja um aumento nos comentários negativos ou gerar relatórios para as partes interessadas.
![]()
Este é apenas um exemplo de como o Latenode pode transformar sua abordagem de uso da API do Reddit com automação avançada. Na prática, os recursos da plataforma são praticamente ilimitados — você pode criar quaisquer fluxos de automação necessários para melhorar a eficiência do seu negócio. Seja para coleta automática de dados, análise de sentimento, envio de notificações ou acompanhamento de indicadores-chave de desempenho, o Latenode oferece as ferramentas para torná-los realidade.
Ao aproveitar o construtor visual de fluxos do Latenode e sua integração perfeita com a API do Reddit, você pode projetar e implementar facilmente fluxos de automação complexos, aumentando a eficiência da análise de dados e acelerando seus fluxos.
Se você precisar de ajuda ou orientação para criar seu próprio script, ou quiser replicar este, entre em contato com nossa comunidade no Discord, onde estão os especialistas em automação low-code.
Você pode automatizar a API do Reddit no Latenode — a melhor plataforma de automação low-code 🚀
Explorando as funcionalidades da API do Reddit
Com o token de acesso em mãos, você está pronto para começar a explorar a API do Reddit e fazer solicitações a vários endpoints. A API oferece uma ampla variedade de endpoints para recuperar dados, realizar ações e interagir com diferentes aspectos da plataforma do Reddit.
Finalidade da coleta
Um dos principais casos de uso da API do Reddit é a coleta de dados. A API permite que você colete dados valiosos do Reddit para diferentes finalidades, como:
- Análise de sentimento: ao coletar posts e comentários de subreddits específicos, você pode analisar os sentimentos e opiniões expressos pelos usuários sobre vários temas. Isso pode ser útil para pesquisa de mercado, monitoramento de marca ou avaliação da opinião pública.
- Análise de tendências: a API permite acompanhar e analisar tendências em diferentes subreddits ao longo do tempo. Você pode identificar temas populares, monitorar menções a palavras-chave e obter insights sobre discussões e comunidades emergentes.
- Desenvolvimento de aplicações: os dados coletados podem ser usados para criar aplicações que fornecem recursos aprimorados ou interfaces alternativas para navegar e interagir com o conteúdo do Reddit. Alguns exemplos incluem clientes personalizados do Reddit, ferramentas de curadoria de conteúdo ou painéis de visualização de dados.
- Pesquisa e fins acadêmicos: pesquisadores e acadêmicos podem aproveitar a API do Reddit para coletar dados para estudos relacionados a redes sociais, comunidades online, difusão de informações e muito mais. A enorme quantidade de conteúdo gerado por usuários no Reddit fornece um conjunto de dados valioso para diversas disciplinas de pesquisa.
Ao coletar dados pela API do Reddit, é fundamental usá-la com responsabilidade e em conformidade com os termos de serviço do Reddit. Esteja atento à privacidade e aos direitos dos usuários do Reddit e garanta que suas práticas de coleta de dados sigam diretrizes éticas e leis aplicáveis.
Solicitações de remoção
Se você coletar dados pela API do Reddit e receber uma solicitação de um usuário para remover seu conteúdo, é importante lidar com essas solicitações de forma rápida e adequada. Os usuários do Reddit têm o direito de solicitar a remoção de suas informações pessoais ou conteúdos que tenham publicado.
Para lidar efetivamente com solicitações de remoção, considere implementar as seguintes práticas:
- Forneça instruções claras: facilite para os usuários entenderem como podem solicitar a remoção de seu conteúdo. Inclua instruções claras em seu site ou aplicação, especificando as etapas que precisam seguir e as informações que devem fornecer.
- Estabeleça um canal dedicado: configure um endereço de e-mail ou formulário de contato dedicado especificamente ao tratamento de solicitações de remoção. Isso garante que essas solicitações sejam encaminhadas à equipe ou pessoa responsável por processá-las.
- Verifique a autenticidade: ao receber uma solicitação de remoção, tome medidas para verificar sua autenticidade. Certifique-se de que a solicitação vem do autor original ou de um representante autorizado. Isso pode envolver solicitar informações adicionais ou comprovação de identidade.
- Processe as solicitações rapidamente: assim que uma solicitação de remoção for verificada, aja rapidamente para remover o conteúdo solicitado do seu banco de dados ou sistema. Procure processar as solicitações dentro de um prazo razoável, geralmente em alguns dias úteis, para demonstrar seu compromisso com a privacidade dos usuários.
- Comunique-se com o usuário: mantenha o usuário informado sobre o status da solicitação de remoção. Confirme o recebimento da solicitação e forneça atualizações sobre o andamento do processo de remoção. Quando o conteúdo for removido, notifique o usuário e confirme que sua solicitação foi atendida.
- Documente e audite: mantenha um registro de todas as solicitações de remoção recebidas e das ações tomadas em resposta. Essa documentação pode ser útil para fins de auditoria e para demonstrar conformidade com regulamentações ou políticas relevantes.
Ao ter um processo bem definido para lidar com solicitações de remoção, você demonstra respeito pelos direitos dos usuários e constrói confiança em suas práticas de coleta de dados.
Usando os endpoints legados api.pullpush
Além da API oficial do Reddit, existem endpoints legados fornecidos por serviços de terceiros, como https://api.pullpush.io, que oferecem acesso simplificado aos dados do Reddit. Esses endpoints são desenvolvidos sobre a API oficial e fornecem uma interface mais conveniente para determinadas tarefas.
Os endpoints legados em https://api.pullpush.io oferecem recursos como pesquisar comentários e publicações, recuperar comentários específicos pelos seus IDs e acessar IDs de comentários de uma publicação específica.
Embora esses endpoints legados possam ser úteis para prototipagem rápida ou recuperação simplificada de dados, é importante observar que eles não recebem suporte oficial do Reddit. A disponibilidade e a confiabilidade desses endpoints podem variar, e eles estão sujeitos a alterações ou descontinuação sem aviso prévio.
Ao usar endpoints legados, tenha em mente as seguintes considerações:
- Funcionalidade limitada: os endpoints legados podem não fornecer toda a variedade de recursos e opções disponíveis na API oficial do Reddit. Eles normalmente são projetados para casos de uso específicos e podem ter limitações em comparação com a API oficial.
- Dependência de serviço de terceiros: ao depender de endpoints legados, você introduz uma dependência de um serviço de terceiros. Se o serviço sofrer indisponibilidade, alterar sua API ou descontinuar os endpoints, sua aplicação ou script pode ser afetado.
- Possíveis limites de taxa: serviços de terceiros podem impor seus próprios limites de taxa ou restrições de uso em endpoints legados. Conheça esses limites e garanta que sua aplicação ou script os respeite para evitar interrupções ou bloqueios.
- Conformidade com os termos de serviço do Reddit: mesmo ao usar endpoints legados, é essencial cumprir os termos de serviço e as regras da API do Reddit. O uso indevido da API, solicitações excessivas ou violação dos termos podem resultar em consequências como bloqueios de IP ou suspensões de conta.
Se você optar por usar endpoints legados, recomenda-se ter um mecanismo de contingência implementado. Isso pode envolver alternar para a API oficial do Reddit ou implementar tratamento de erros para lidar adequadamente com problemas ou alterações nos endpoints legados.
Pesquisando comentários
Um dos principais casos de uso da API do Reddit é pesquisar comentários com base em critérios específicos. O endpoint /reddit/search/comment/ permite pesquisar comentários usando diversos fatores para refinar os resultados da busca.
Para pesquisar comentários, você pode fazer uma solicitação GET ao endpoint /reddit/search/comment/ com os parâmetros de busca desejados. Veja alguns parâmetros usados com frequência:
- q: a consulta de pesquisa ou palavra(s)-chave a ser(em) comparada(s) com o texto do comentário. Você pode usar operadores booleanos como AND, OR e NOT para combinar várias palavras-chave.
- subreddit: limite a busca a um subreddit específico fornecendo seu nome. Esse parâmetro permite restringir a busca a comentários de uma comunidade em particular.
- author: restrinja a busca a comentários feitos por um usuário específico. Forneça o nome de usuário do autor para recuperar comentários somente desse usuário.
- after e before: especifique um intervalo de tempo para os resultados da busca. O parâmetro after recupera comentários publicados após uma data ou hora específica, enquanto o parâmetro before recupera comentários publicados antes de uma data ou hora específica. Esses parâmetros aceitam timestamps Unix ou expressões de tempo relativo, como "30d" para 30 dias.
- sort: escolha a ordem de classificação dos resultados da busca. As opções disponíveis incluem relevance (padrão), new (comentários mais recentes primeiro), top (comentários com melhor avaliação primeiro) e comments (comentários com mais respostas primeiro).
- size: determine o número máximo de comentários retornados na resposta. Por padrão, a API retorna até 25 comentários, mas você pode aumentar esse limite para até 100 comentários por solicitação.
Veja um exemplo de solicitação de pesquisa usando Python e a biblioteca requests:
import requests
base_url = "https://api.pullpush.io/reddit/search/comment/"
params = {
"q": "python",
"subreddit": "learnpython",
"sort": "top",
"size": 50
}
headers = {"Authorization": f"Bearer {access_token}"}
response = requests.get(base_url, params=params, headers=headers)
comments = response.json()["data"]
Neste exemplo, estamos pesquisando comentários que contêm a palavra-chave "python" dentro do subreddit "learnpython". Os resultados são classificados pelos comentários com melhor avaliação primeiro, e estamos solicitando no máximo 50 comentários.
A resposta da API conterá um objeto JSON com uma chave "data", que contém uma matriz de objetos de comentário que correspondem aos critérios de pesquisa. Cada objeto de comentário contém diversos atributos, como ID do comentário, autor, texto, pontuação, timestamp e muito mais.
Ao aproveitar a funcionalidade de pesquisa da API do Reddit, você pode recuperar comentários com eficiência com base em critérios específicos, permitindo realizar tarefas de análise, mineração de dados ou curadoria de conteúdo.
Parâmetros de pesquisa para comentários
Ao pesquisar comentários usando a API do Reddit, você tem uma ampla variedade de parâmetros à sua disposição para ajustar os resultados da busca. Veja alguns dos parâmetros de pesquisa mais usados para comentários:
Obtendo comentários com base no ID
Se você tiver o(s) ID(s) específico(s) do(s) comentário(s) que deseja recuperar, poderá usar o parâmetro ids. Passe uma lista de IDs de comentários separados por vírgula para buscar diretamente esses comentários específicos. Isso é útil quando você já tem os IDs dos comentários de uma busca anterior ou de outra fonte.
params = {
"ids": "abc123,def456,ghi789"
}
Usando o parâmetro subreddit
Para pesquisar comentários em um subreddit específico, use o parâmetro subreddit. Forneça o nome do subreddit, sem o prefixo "/r/", para limitar os resultados da busca aos comentários publicados nessa comunidade específica.
Exemplo:
params = {
"q": "python",
"subreddit": "learnpython"
}
Usando os parâmetros sort e size
O parâmetro sort permite especificar a ordem de classificação dos resultados da busca. As opções disponíveis incluem:
- relevance (padrão): classifica por relevância para a consulta de pesquisa.
- new: classifica pelos comentários mais recentes primeiro.
- top: classifica pelos comentários com melhor avaliação primeiro.
- comments: classifica pelos comentários com mais respostas primeiro.
O parâmetro size determina o número máximo de comentários retornados na resposta. Por padrão, a API retorna até 25 comentários, mas você pode aumentar esse limite para até 100 comentários por solicitação.
Exemplo:
params = {
"q": "python",
"sort": "top",
"size": 50
}
Usando os parâmetros before e after
Para restringir os resultados da busca a um intervalo de tempo específico, use os parâmetros before e after. Esses parâmetros aceitam timestamps Unix ou expressões de tempo relativo.
O parâmetro after recupera comentários publicados após uma data ou hora específica. Por exemplo, after="1d" recupera comentários publicados nas últimas 24 horas.
O parâmetro before recupera comentários publicados antes de uma data ou hora específica. Por exemplo, before="2022-01-01" recupera comentários publicados antes de 1º de janeiro de 2022.
Exemplo:
params = {
"q": "python",
"after": "7d",
"before": "2022-06-01"
}
Usando o parâmetro author
Para pesquisar comentários feitos por um usuário específico, use o parâmetro author. Forneça o nome de usuário do autor, sem o prefixo "/u/", para recuperar comentários apenas desse usuário.
Exemplo:
params = {
"q": "python",
"author": "example_user"
}
Ao combinar esses parâmetros de pesquisa, você pode criar buscas altamente direcionadas para encontrar os comentários específicos de que precisa para sua análise ou aplicação.
Pesquisando publicações
Além de pesquisar comentários, a API do Reddit também permite pesquisar publicações, também conhecidas como posts, usando o endpoint /reddit/search/submission/. As publicações são o conteúdo principal postado pelos usuários no Reddit e podem ser posts de texto, links, imagens ou vídeos.
Para pesquisar publicações, você pode fazer uma solicitação GET ao endpoint /reddit/search/submission/ com os parâmetros de pesquisa desejados. Muitos dos parâmetros de pesquisa para publicações são semelhantes aos dos comentários. Veja alguns parâmetros usados com frequência:
- q: a consulta de pesquisa ou palavra(s)-chave a ser(em) comparada(s) com o título, corpo ou URL da publicação. Você pode usar operadores booleanos como AND, OR e NOT para combinar várias palavras-chave.
- subreddit: limite a busca a um subreddit específico fornecendo seu nome. Esse parâmetro permite restringir a busca a publicações de uma comunidade em particular.
- author: restrinja a busca a publicações feitas por um usuário específico. Forneça o nome de usuário do autor para recuperar publicações somente desse usuário.
- after e before: especifique um intervalo de tempo para os resultados da busca. O parâmetro after recupera publicações feitas após uma data ou hora específica, enquanto o parâmetro before recupera publicações feitas antes de uma data ou hora específica. Esses parâmetros aceitam timestamps Unix ou expressões de tempo relativo, como "30d" para 30 dias.
- sort: escolha a ordem de classificação dos resultados da busca. As opções disponíveis incluem relevance (padrão), new (publicações mais recentes primeiro), hot (publicações populares), top (publicações com melhor avaliação) e comments (publicações com mais comentários).
- size: determine o número máximo de publicações retornadas na resposta. Por padrão, a API retorna até 25 publicações, mas você pode aumentar esse limite para até 100 publicações por solicitação.
Veja um exemplo de solicitação de pesquisa de publicações usando Python e a biblioteca requests:
import requests
base_url = "https://api.pullpush.io/reddit/search/submission/"
params = {
"q": "python tutorial",
"subreddit": "learnpython",
"sort": "top",
"size": 10
}
headers = {"Authorization": f"Bearer {access_token}"}
response = requests.get(base_url, params=params, headers=headers)
submissions = response.json()["data"]
Neste exemplo, estamos pesquisando publicações que contêm as palavras-chave "python tutorial" no subreddit "learnpython". Os resultados são classificados pelas publicações com melhor avaliação primeiro, e estamos solicitando no máximo 10 publicações.
A resposta da API conterá um objeto JSON com uma chave "data", que contém uma matriz de objetos de publicação que correspondem aos critérios de pesquisa. Cada objeto de publicação contém diversos atributos, como ID da publicação, título, autor, pontuação, URL, timestamp e muito mais.
Ao aproveitar a funcionalidade de pesquisa de publicações, você pode descobrir conteúdos populares ou relevantes, acompanhar discussões sobre temas específicos ou coletar dados para fins de análise ou curadoria de conteúdo.
Parâmetros de pesquisa para publicações
Ao pesquisar publicações usando a API do Reddit, você tem vários parâmetros disponíveis para refinar os resultados da busca. Veja alguns parâmetros de pesquisa adicionais específicos para publicações:
- selftext: pesquise publicações com base no conteúdo textual de posts próprios, ou seja, publicações somente de texto. Esse parâmetro permite comparar palavras-chave com o texto do corpo das publicações.
- title: pesquise publicações com base em seus títulos. Use este parâmetro para encontrar publicações com palavras ou frases específicas no título.
- url: pesquise publicações com base em sua URL. Isso é útil quando você procura publicações que apontam para um site ou domínio específico.
- over_18: filtre publicações com base em seu status NSFW (Not Safe For Work). Defina este parâmetro como true para incluir apenas publicações NSFW ou false para excluí-las.
- is_video: filtre publicações com base em conterem conteúdo de vídeo. Defina este parâmetro como true para incluir apenas publicações de vídeo ou false para excluí-las.
- score: filtre publicações com base em sua pontuação, ou seja, votos positivos menos votos negativos. Você pode especificar uma pontuação mínima (score=>10) ou um intervalo de pontuação (score=>10, score=<100) para recuperar publicações dentro de determinada faixa.
- num_comments: filtre publicações com base no número de comentários recebidos. Assim como no parâmetro score, você pode especificar um número mínimo de comentários (num_comments=>50) ou um intervalo (num_comments=>50, num_comments=<100).
Veja um exemplo de solicitação de pesquisa de publicações usando parâmetros adicionais:
params = {
"q": "python",
"subreddit": "learnpython",
"selftext": "beginner",
"over_18": "false",
"score=>": 100,
"num_comments=>": 50
}
Neste exemplo, estamos pesquisando publicações que contêm a palavra-chave "python" no subreddit "learnpython". Estamos filtrando ainda mais os resultados para incluir apenas publicações com a palavra "beginner" no texto próprio, excluindo publicações NSFW e exigindo uma pontuação mínima de 100 e pelo menos 50 comentários.
Ao combinar esses parâmetros de pesquisa, você pode criar buscas altamente direcionadas para encontrar publicações que atendam a critérios específicos relevantes para suas necessidades.
Obter todos os IDs de comentários de uma publicação específica
Em alguns casos, talvez você queira recuperar todos os IDs de comentários associados a uma publicação específica. Isso pode ser útil quando você deseja analisar ou processar os comentários separadamente da publicação em si.
Para obter todos os IDs de comentários de uma publicação, você pode fazer uma solicitação GET ao endpoint /reddit/submission/{submission_id}/comments/, em que {submission_id} é o ID da publicação de seu interesse.
Veja um exemplo de como recuperar IDs de comentários de uma publicação usando Python e a biblioteca requests:
import requests
submission_id = "abc123"
base_url = f"https://api.pullpush.io/reddit/submission/{submission_id}/comments/"
headers = {"Authorization": f"Bearer {access_token}"}
response = requests.get(base_url, headers=headers)
comment_ids = response.json()["data"]
Neste exemplo, estamos recuperando os IDs de comentários de uma publicação com o ID "abc123". A resposta da API conterá um objeto JSON com uma chave "data", que contém uma matriz de IDs de comentários associados à publicação.
Depois de ter os IDs de comentários, você pode usá-los para recuperar os detalhes dos comentários usando o endpoint /reddit/comment/{comment_id}/ ou a API oficial do Reddit.
Lembre-se de que recuperar IDs de comentários de uma publicação com grande número de comentários pode exigir várias solicitações à API devido à paginação. A API normalmente retorna um número limitado de IDs de comentários por solicitação, e talvez você precise fazer solicitações adicionais com parâmetros de paginação para recuperar todos os IDs.
Ao recuperar IDs de comentários de uma publicação, você pode coletar com eficiência os identificadores de todos os comentários associados a um post específico, permitindo realizar análises ou processamentos adicionais nos comentários separadamente.
Uma API gratuita torna inútil o encerramento de apps de terceiros pelo Reddit?
Embora uma API gratuita possa fornecer acesso aos dados do Reddit, é importante considerar o contexto e as implicações mais amplos. A decisão do Reddit de encerrar determinados apps de terceiros não se baseia somente na disponibilidade de uma API gratuita. Há vários fatores em jogo, como garantir uma experiência consistente para o usuário, manter o controle sobre o ecossistema da plataforma e proteger a privacidade e a segurança dos usuários.
O Reddit tem o direito de regular e gerenciar o uso de sua API e dos apps criados sobre ela. A empresa pode ter diretrizes, termos de serviço e requisitos específicos que os apps de terceiros precisam cumprir. Violação dessas diretrizes ou uso indevido da API pode resultar no encerramento do acesso.
Além disso, o Reddit pode ter motivos estratégicos para encerrar determinados apps de terceiros. Por exemplo, a empresa pode querer incentivar os usuários a usar o app ou site oficial do Reddit para ter mais controle sobre a experiência do usuário e as oportunidades de monetização.
Embora uma API gratuita possa permitir que desenvolvedores acessem os dados do Reddit, isso não torna necessariamente inútil a decisão do Reddit de encerrar apps específicos de terceiros. O Reddit tem autoridade para gerenciar sua plataforma e ecossistema de uma forma alinhada a seus objetivos e prioridades.
Por que o Reddit mudou os preços de sua API
A decisão do Reddit de alterar o modelo de preços de sua API foi motivada por diversos fatores, incluindo sustentabilidade, alocação de recursos e integridade da plataforma. Veja alguns dos principais motivos por trás da mudança:
- Sustentabilidade: operar e manter uma infraestrutura de API em larga escala exige recursos significativos, incluindo custos de servidores, largura de banda e suporte técnico. Ao introduzir níveis de preços, o Reddit busca garantir a sustentabilidade e a escalabilidade de longo prazo de sua API. A receita gerada pelo uso da API pode ajudar a cobrir os custos associados à oferta e manutenção do serviço.
- Alocação de recursos: o Reddit quer alocar seus recursos de maneira eficiente e priorizar as necessidades de sua plataforma principal e base de usuários. Ao cobrar pelo uso da API, o Reddit pode concentrar seus recursos em oferecer uma experiência melhor aos usuários e apoiar o desenvolvimento de recursos e funcionalidades oficiais.
- Proteção da integridade da plataforma: a mudança de preços da API ajuda a mitigar abusos e usos indevidos da API. Ao introduzir custos pelo uso da API, o Reddit pode desencorajar agentes mal-intencionados de acessar a API para fins prejudiciais, como extrair grandes volumes de dados ou criar contas de spam. O modelo de preços atua como uma barreira de entrada, garantindo que os desenvolvedores que usam a API tenham intenções legítimas e estejam dispostos a investir em suas aplicações.
- Incentivo à inovação: o modelo de preços pode incentivar desenvolvedores a criar aplicações de alta qualidade que gerem valor para os usuários do Reddit. Ao associar um custo ao uso da API, os desenvolvedores são incentivados a criar aplicações eficientes e bem projetadas que justifiquem o investimento. Isso pode resultar em um ecossistema mais ativo e inovador de aplicações de terceiros.
- Alinhamento aos padrões do setor: muitas plataformas e serviços populares, como Twitter e Google, têm modelos de preços para suas APIs. Ao introduzir preços para a API, o Reddit se alinha aos padrões e boas práticas do setor. Isso garante que a API do Reddit não seja tratada como algo garantido e que os desenvolvedores que a utilizam estejam comprometidos em criar aplicações valiosas.
Embora a alteração nos preços da API possa afetar algumas aplicações de terceiros, especialmente aquelas que dependem fortemente de uso de API em alto volume, o Reddit acredita que os benefícios de longo prazo de um ecossistema de API sustentável e bem gerenciado superam as interrupções de curto prazo.
Como o Reddit alterou seu modelo de preços
O Reddit introduziu um novo modelo de preços para sua API que inclui diferentes níveis baseados nos volumes de uso. O modelo busca oferecer uma estrutura de custos mais previsível e transparente para desenvolvedores, garantindo ao mesmo tempo a sustentabilidade e escalabilidade da API.
Veja uma visão geral dos novos níveis de preços:
- Nível gratuito: o nível gratuito permite uma quantidade limitada de solicitações à API por mês. Esse nível é adequado para aplicações de pequena escala ou desenvolvedores que estão começando a explorar a API do Reddit. Ele fornece acesso a funcionalidades básicas e tem determinados limites de taxa.
- Nível padrão: o nível padrão foi projetado para aplicações com uso moderado da API. Ele oferece uma quantidade maior de solicitações mensais à API em comparação com o nível gratuito. Desenvolvedores desse nível têm acesso a recursos adicionais e limites de taxa mais altos. O preço do nível padrão é baseado no número de solicitações à API realizadas.
- Nível empresarial: o nível empresarial é voltado para aplicações com uso de API em alto volume e requisitos avançados. Ele oferece o maior nível de acesso à API do Reddit, incluindo limites de taxa ampliados, suporte dedicado e acesso a recursos premium. O preço do nível empresarial é personalizado com base nas necessidades específicas e nos padrões de uso da aplicação.
Além dos níveis de preços, o Reddit introduziu preços baseados no uso para determinados endpoints da API. Isso significa que os desenvolvedores pagam com base no número de solicitações à API que fazem para endpoints específicos. Os preços variam dependendo do endpoint e do volume de solicitações.
O novo modelo de preços também inclui disposições para casos de uso específicos, como pesquisa acadêmica e aplicações de acessibilidade. O Reddit oferece descontos ou isenção de taxas para aplicações que se enquadram nessas categorias, reconhecendo suas contribuições importantes para a comunidade.
Para oferecer transparência e ajudar desenvolvedores a estimar seus custos de uso da API, o Reddit lançou calculadoras de preços e documentação detalhada descrevendo os custos associados a cada nível e endpoint.
O que isso significa para apps de terceiros?
As mudanças nos preços da API do Reddit têm implicações para aplicações de terceiros que dependem da API para acessar dados e funcionalidades do Reddit. O impacto nessas aplicações depende de seu caso de uso específico, volume de uso e modelo de negócio. Veja algumas possíveis consequências:
- Aumento de custos: aplicações que dependem fortemente de uso de API em alto volume podem enfrentar custos maiores no novo modelo de preços. A precificação baseada no uso para determinados endpoints e a estrutura de preços em níveis podem resultar em despesas mais altas para aplicações que fazem muitas solicitações à API. Isso pode exigir que os desenvolvedores reavaliem seus padrões de uso e otimizem suas chamadas de API para reduzir custos.
- Ajustes no modelo de negócio: algumas aplicações de terceiros podem precisar ajustar seus modelos de negócio para acomodar os novos preços. Elas podem considerar a introdução de taxas de assinatura, recursos premium ou explorar fontes alternativas de receita para compensar os custos associados ao uso da API. Aplicações que antes dependiam de uma API gratuita podem precisar reavaliar suas estratégias de monetização.
- Limitações de recursos: dependendo do nível de preços e dos endpoints específicos usados, aplicações de terceiros podem enfrentar limitações em relação aos recursos e funcionalidades que podem oferecer. Os limites de taxa e as restrições de acesso associados a diferentes níveis podem afetar o desempenho e os recursos dessas aplicações.
- Priorização do desenvolvimento: desenvolvedores de aplicações de terceiros podem precisar priorizar seus esforços de desenvolvimento com base no novo modelo de preços. Eles podem se concentrar em otimizar o uso da API, implementar mecanismos de cache ou explorar fontes alternativas de dados para reduzir a dependência da API do Reddit. Isso pode levar a mudanças no roteiro e no desenvolvimento de recursos dessas aplicações.
- Impacto na experiência do usuário: mudanças em aplicações de terceiros devido ao novo modelo de preços podem afetar a experiência do usuário. Alguns recursos ou funcionalidades aos quais os usuários estavam acostumados podem ser modificados ou removidos. As aplicações podem precisar comunicar essas mudanças aos usuários e fornecer orientações sobre novas limitações ou formas alternativas de acessar determinados recursos.
- Colaboração e parcerias: o novo modelo de preços pode incentivar a colaboração e parcerias entre desenvolvedores de aplicações de terceiros. Os desenvolvedores podem explorar oportunidades para compartilhar custos, reunir recursos ou desenvolver integrações que otimizem o uso da API. Isso pode levar ao surgimento de novas parcerias e ecossistemas dentro da comunidade de desenvolvedores do Reddit.
- Inovação e concorrência: embora as mudanças de preços possam trazer desafios para algumas aplicações de terceiros, elas também podem impulsionar inovação e concorrência. Os desenvolvedores podem ser incentivados a criar aplicações mais eficientes e com maior valor agregado que justifiquem os custos de uso da API. Isso pode resultar no desenvolvimento de aplicações novas e inovadoras que proporcionem experiências únicas aos usuários do Reddit.
- Promoção do app oficial: as mudanças nos preços da API podem estar alinhadas à estratégia do Reddit de promover seu app móvel e site oficiais. Ao introduzir custos pelo uso da API, o Reddit pode incentivar os usuários a migrar para o app oficial em busca de uma experiência integrada e sem atritos. Isso pode afetar a adoção e a base de usuários de aplicações de terceiros.
É importante destacar que o Reddit expressou seu compromisso em apoiar um ecossistema próspero de aplicações de terceiros. A empresa afirmou que trabalhará em estreita colaboração com desenvolvedores para fornecer orientação, suporte e recursos que os ajudem a navegar pelo novo modelo de preços.
Desenvolvedores de aplicações de terceiros devem revisar cuidadosamente a documentação de preços, avaliar seus padrões de uso da API e explorar opções para otimizar suas aplicações. Eles também devem manter uma comunicação aberta com seus usuários e informá-los sobre quaisquer alterações ou atualizações em suas aplicações resultantes das mudanças de preços.
No geral, o impacto das mudanças nos preços da API do Reddit sobre aplicações de terceiros variará de acordo com as circunstâncias específicas de cada aplicação. Embora algumas aplicações possam enfrentar desafios, outras podem encontrar oportunidades para inovar, colaborar e gerar valor para usuários do Reddit de novas formas.
Conclusão
A API do Reddit oferece um poderoso conjunto de ferramentas para desenvolvedores acessarem e interagirem com a enorme quantidade de dados disponível na plataforma do Reddit. Ao aproveitar a API, você pode criar aplicações, realizar análise de dados, automatizar tarefas e desenvolver experiências únicas para os usuários do Reddit.
Ao longo deste guia, exploramos os fundamentos da API do Reddit, incluindo seu processo de configuração, autenticação com tokens de acesso e diversos endpoints para pesquisar comentários e publicações. Também discutimos considerações importantes, como finalidades de coleta de dados, tratamento de solicitações de remoção e uso de endpoints legados.
Ao iniciar sua jornada com a API do Reddit, lembre-se de usá-la com responsabilidade e em conformidade com os termos de serviço do Reddit. Fique atento aos limites de taxa, respeite a privacidade dos usuários e trate os dados de forma ética.
A API do Reddit oferece infinitas possibilidades de inovação e criatividade. Seja criando uma ferramenta de curadoria de conteúdo, realizando análise de sentimento ou desenvolvendo um cliente personalizado do Reddit, a API fornece as ferramentas e os dados necessários para transformar suas ideias em realidade.
Continue explorando a documentação da API, experimente diferentes endpoints e parâmetros e não hesite em buscar ajuda da ativa comunidade de desenvolvedores do Reddit. Com o poder da API do Reddit ao seu alcance, você pode descobrir novos insights, criar experiências envolventes e contribuir para o ecossistema do Reddit, que está em constante evolução.
Bom desenvolvimento e boa exploração do mundo dos dados do Reddit!
Você pode testar a API do Reddit gratuitamente no Latenode — a melhor plataforma de automação para você 🚀


