Como importar os textos do COPOM para análise de sentimentos no Python?

Os textos divulgados pelo COPOM, sejam os comunicados ou atas, são o ponto de partida para diversos tipos de análises quantitativas, como a análise de sentimentos, e qualitativas, como uma análise de cenário econômico. Neste artigo, mostramos como coletar estes textos de forma automatizada usando web scrapping e Python.

Para o propósito deste artigo, que é a primeira parte de um exercício maior de análise de sentimentos, vamos focar em coletas as atas do COPOM na versão em inglês.

Para obter o código e o tutorial deste exercício faça parte do Clube AM e receba toda semana os códigos em R/Python, vídeos, tutoriais e suporte completo para dúvidas.

Bibliotecas

Primeiro, importamos as bibliotecas de Python necessárias no código.

  • pandas
  • requests
  • os
  • langchain_community

Coleta de dados

Em seguida, usando o navegador Google Chrome, siga estas etapas:

  1. Acessar o site em inglês das atas do COPOM: https://www.bcb.gov.br/en/publications/copomminutes
  2. Clicar com botão direito em cima do botão Download

  3. Clicar em Inspecionar
  4. Clicar em Network

  5. Pressionar Ctrl+R
  6. No campo Filter, pesquisar por “minutes”

  7. Nos resultados, encontrar o serviço de API “ultimas” e copiar o link até a parte “filtro=”, assim: https://www.bcb.gov.br/api/servico/sitebcb/copomminutes/ultimas?quantidade=3&filtro=

  8. Requisitar os metadados das últimas 50 atas, mudando o parâmetro “quantidate” no link acima, através das bibliotecas requests e pandas

Como resultado, temos uma tabela DataFrame com os links para os PDFs das últimas 50 atas:

Em seguida, usamos a biblioteca requests para baixar cada PDF de cada link. Como resultado, teremos 50 arquivos PDFs salvos na pasta de trabalho corrente:

Importação de dados

Por fim, com os textos disponibilizados localmente em formato PDF, podemos avançar para a etapa de transformar as informações de PDF para texto (string) diretamente no Python. Usamos a biblioteca pypdf e a langchain_community para fazer esta transformações em poucas linhas de código.

Como resultado, teremos uma tabela com os metadados da ata do COPOM e o texto bruto associado:

Conclusão

Os textos divulgados pelo COPOM, sejam os comunicados ou atas, são o ponto de partida para diversos tipos de análises quantitativas, como a análise de sentimentos, e qualitativas, como uma análise de cenário econômico. Neste artigo, mostramos como coletar estes textos de forma automatizada usando web scrapping e Python.

Tenha acesso ao código e suporte desse e de mais 500 exercícios no Clube AM!

Quer o código desse e de mais de 500 exercícios de análise de dados com ideias validadas por nossos especialistas em problemas reais de análise de dados do seu dia a dia? Além de acesso a vídeos, materiais extras e todo o suporte necessário para você reproduzir esses exercícios? Então, fale com a gente no Whatsapp e veja como fazer parte do Clube AM, clicando aqui.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

O que é e como funcionam Sistemas Multi-Agentes

Sistemas multi-agentes (MAS) representam uma nova forma de estruturar aplicações de inteligência artificial, especialmente úteis para lidar com problemas complexos e distribuídos. Em vez de depender de um único agente generalista, esses sistemas são compostos por múltiplos agentes especializados que colaboram, competem ou se coordenam para executar tarefas específicas. Neste post, explicamos o que são os MAS, seus principais componentes (como LLMs, ferramentas e processos) e as arquiteturas mais comuns.

O que é um Vector Database e como criar um com LangChain

Nesta postagem, mostramos como construir um pipeline simples de RAG (Retrieval-Augmented Generation) usando o LangChain, o modelo Gemini 2.0 Flash e o Vector Database Chroma. Utilizamos como exemplo o Relatório de Inflação de junho de 2025 do Banco Central do Brasil. O fluxo envolve o download e leitura do PDF, divisão do texto com RecursiveCharacterTextSplitter, geração de embeddings com Gemini, armazenamento vetorial com Chroma e busca semântica para responder perguntas com base no conteúdo do relatório. É uma aplicação prática e didática para economistas que desejam integrar IA ao seu fluxo de análise.

Automatizando a Construção de Códigos em Python com LangGraph

Neste post, mostramos como construir um agente de código em Python utilizando LangGraph, LangChain e Gemini. A proposta é construir um protótipo para automatizar o ciclo completo de geração, execução e correção de código com o uso de LLMs, organizando o processo em um grafo de estados.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.