Como Automatizar a Extração de Visualizações de Playlists com Python e YouTube Data API
Neste artigo, mostramos como usar Python e a YouTube Data API para criar um programa que coleta automaticamente os IDs e visualizações de vídeos de qualquer playlist pública.
Para usar a YouTube Data API com Python, crie um projeto no Google Cloud, ative a YouTube Data API v3 e gere uma chave de API. Depois instale a biblioteca google-api-python-client e chame os endpoints da API para coletar dados de vídeos e playlists — como IDs, títulos e número de visualizações — automaticamente, sem abrir o navegador.
Baixe o código completo ou siga passos claros para configurar a API, escrever o código e até personalizar a saída para suas necessidades!
Para fazer o download do(s) arquivo(s) utilizados na aula, preencha com o seu e-mail:
Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.
O que é necessário para começar o projeto?
Para extrair dados de uma playlist do YouTube, você usará Python e algumas bibliotecas específicas, além de configurar acesso à API do YouTube. Aqui está o que você precisa:
- Python instalado: Versão 3.x (recomendado 3.8 ou superior).
- Editor de código: Como VS Code ou qualquer outro de sua preferência.
- Bibliotecas Python:
- google-api-python-client: Para interagir com a API do YouTube.
- google-auth-oauthlib: Para autenticação.
- Conta Google: Para acessar o Google Cloud Console e criar credenciais.
- ID da playlist: Encontrado na URL da playlist ou de um vídeo dela.

Como configurar a YouTube Data API?
A YouTube Data API permite acessar dados públicos de vídeos, playlists e canais de forma programática. É a maneira mais prática e segura de coletar informações como visualizações, títulos e IDs, com documentação clara e suporte para Python.
Como configurar o acesso?
Siga estes passos para configurar a API:
- Acesse o Google Cloud Console: Pesquise “Google Cloud Console” ou acesse console.cloud.google.com.
- Crie um projeto: No console, crie um novo projeto ou use um existente.
- Ative a API: Vá em “APIs e Serviços” > “Biblioteca”, busque por “YouTube Data API v3” e clique em “Ativar”.
- Crie credenciais:
- Em “Credenciais”, clique em “Criar Credenciais” > “ID do Cliente OAuth 2.0”.
- Escolha “Aplicativo de Computador” e dê um nome (ex.: “YouTube Automation”).
- Baixe o arquivo JSON gerado e renomeie para secrets.json.
- Mova o arquivo: Coloque o secrets.json na pasta do seu projeto Python.
Dica: O arquivo secrets.json contém suas chaves de autenticação, então mantenha-o seguro e não compartilhe.

Como instalar as bibliotecas necessárias?
Para interagir com a API, instale as bibliotecas google-api-python-client e google-auth-oauthlib via pip. Execute os seguintes comandos no terminal:
pip install google-api-python-client
pip install google-auth-oauthlib
Como verificar se funcionou?
Após a instalação, importe as bibliotecas no seu código Python. Se não houver erros, a instalação foi bem-sucedida.
Quando usar?
Essas bibliotecas são essenciais para qualquer projeto que envolva APIs do Google, como YouTube, Google Sheets ou Google Drive.
Como escrever o código para extrair dados da playlist?
Como obter os IDs dos vídeos e suas visualizações?
O código usa a API para listar os vídeos de uma playlist e extrair suas estatísticas. Abaixo está o código comentado, dividido em etapas:
from googleapiclient.discovery import build
from google_auth_oauthlib.flow import InstalledAppFlow
# Configurar autenticação com o arquivo secrets.json
flow = InstalledAppFlow.from_client_secrets_file('secrets.json', ['https://www.googleapis.com/auth/youtube.readonly'])
credentials = flow.run_local_server(port=0) # Autenticação local
youtube = build('youtube', 'v3', credentials=credentials)
# ID da playlist (encontrado na URL da playlist)
playlist_id = 'SEU_PLAYLIST_ID_AQUI' # Ex.: PLP9I5fo2nwR...
# Requisição para listar vídeos da playlist
response = youtube.playlistItems().list(
part='contentDetails,snippet',
playlistId=playlist_id,
maxResults=50 # Máximo de vídeos por requisição
).execute()
# Extrair IDs dos vídeos
videos = response['items']
ids_videos = ['videoId'] for video in videos]
# Transformar IDs em texto separado por vírgulas
ids_texto = ','.join(ids_videos)
# Requisição para obter estatísticas dos vídeos
response_videos = youtube.videos().list(
part='statistics,snippet',
id=ids_texto
).execute()
# Exibir ID, título e visualizações de cada vídeo
for video in response_videos['items']:
id_video = video['id']
title = video['snippet']['title']
views = video['statistics']['viewCount']
print(f'{title} ({id_video}) - {views} visualizações')O que o código faz?
- Autenticação: Usa o secrets.json para autenticar no YouTube.
- Lista vídeos: O método playlistItems.list obtém os IDs dos vídeos da playlist.
- Converte IDs: Usa join para criar uma string com IDs separados por vírgula.
- Coleta estatísticas: O método videos.list extrai visualizações e títulos.
- Exibe resultados: Imprime o título, ID e visualizações de cada vídeo.
Como encontrar o ID da playlist?
No YouTube, abra a playlist desejada (ex.: “Curso de Python 2025”). Na URL, o ID aparece após list=, como PLP9I5fo2nwR.... Copie e cole no código.
Como exibir outras informações, como o título do vídeo?
O código acima já inclui o título do vídeo no resultado, usando o parâmetro snippet na requisição videos.list. Você pode extrair outros dados, como descrição ou data de publicação, consultando a documentação da API. Por exemplo:
- Descrição: video['snippet']['description']
- Data de publicação: video['snippet']['publishedAt']
Como adaptar para várias playlists?
Para processar múltiplas playlists, passe uma lista de IDs separada por vírgulas no parâmetro playlistId:
playlist_ids = 'ID1,ID2,ID3'
response = youtube.playlistItems().list(part='contentDetails,snippet', playlistId=playlist_ids, maxResults=50).execute()Quando personalizar?
Adapte a saída para atender às necessidades do projeto, como gerar relatórios em CSV ou exibir apenas visualizações totais.
Como agendar a automação?
Para executar o código em intervalos regulares (ex.: todo dia às 9h), use a biblioteca Python schedule ou configure um cron job (Linux/Mac) ou Agendador de Tarefas (Windows). Exemplo com schedule:
import schedule
import time
def rodar_automacao():
# Insira o código acima aqui
print("Automação executada!")
schedule.every().monday.at("09:00").do(rodar_automacao)
while True:
schedule.run_pending()
time.sleep(60)Quando agendar?
Use o agendamento para monitorar visualizações regularmente, como em relatórios semanais ou mensais.
Resumo do Projeto
| Etapa | Descrição | Ferramenta/Comando |
|---|---|---|
| Configuração | Ativar API e criar credenciais | Google Cloud Console |
| Instalação | Instalar bibliotecas Python | pip install google-api-python-client google-auth-oauthlib |
| Código | Listar vídeos e extrair visualizações | playlistItems.list e videos.list |
| Personalização | Adaptar saída (ex.: título, descrição) | Parâmetro snippet |
| Agendamento | Rodar automaticamente | Biblioteca schedule ou cron job |
Perguntas frequentes
1. Como usar a YouTube Data API com Python?
Crie um projeto no Google Cloud, ative a YouTube Data API v3 e gere uma chave de API. Instale a biblioteca google-api-python-client e use build('youtube','v3',developerKey=chave) para consultar vídeos, playlists e estatísticas direto pelo código.
2. A YouTube Data API é gratuita?
Sim. A API tem uma cota diária gratuita (10.000 unidades por padrão), suficiente para a maioria dos projetos pessoais. Cada requisição consome uma quantidade de unidades; se precisar de mais, é possível solicitar aumento de cota ao Google.
3. O que dá para coletar com a YouTube Data API?
Você pode obter IDs e títulos de vídeos, visualizações, curtidas e comentários, listar vídeos de uma playlist ou canal e buscar por termos. Tudo de forma estruturada, ideal para relatórios e automações de análise de canais.
4. Preciso de autenticação OAuth?
Para apenas ler dados públicos (vídeos, playlists, estatísticas), basta a chave de API. O OAuth só é necessário quando o programa precisa agir em nome de um usuário, como enviar vídeos ou acessar dados privados do canal.
Conclusão
Aprendemos a criar uma automação que extrai informações de playlists do YouTube utilizando YouTube Data API e Python.
Este projeto é ideal para freelas, analistas de dados ou criadores de conteúdo que querem monitorar o desempenho de vídeos.
Baixe o código completo no início do post e explore outras possibilidades. Personalize para incluir mais dados, títulos, descrições, agendamentos para rodar automaticamente, entre outros!
Gostou deste post? Aprenda mais com guias práticos como este em nossos outros conteúdos sobre Python!
E caso prefira esse conteúdo no formato de vídeo, assista aqui embaixo ou acesse o nosso canal do YouTube!
O que você aprende neste vídeo
Resposta rápida: Nesta aula, o instrutor resolve um projeto freela de Python: automatizar a extração das visualizações dos vídeos de uma playlist do YouTube usando a YouTube Data API. Ele mostra o passo a passo: instalar as bibliotecas do Google, criar as credenciais (OAuth) no Google Cloud Console e baixar o secrets.json, pegar os IDs dos vídeos da playlist (playlistItems.list) e, por fim, buscar as estatísticas de cada vídeo (videos.list com statistics) para extrair o número de views.
Neste vídeo (24 min):
- 0:00 - O projeto freela: extrair automaticamente as visualizações dos vídeos de uma playlist do YouTube.
- 1:00 - Consumir a YouTube Data API v3 (pela biblioteca oficial do Google, com a documentação).
- 3:00 - Criar as credenciais (OAuth) no Google Cloud Console e baixar o
secrets.json. - 7:00 - Copiar o exemplo de código (
playlistItems.list) e autenticar comrun_local_server. - 12:00 - Extrair os IDs de todos os vídeos da playlist (percorrer a resposta).
- 17:00 - Buscar as estatísticas (
videos.listcomstatistics) para pegar o view count de cada vídeo.
Hashtag Treinamentos
Para acessar outras publicações de Python, clique aqui!
Posts mais recentes de Python
- Curso Básico de Python: Saia do Zero em 10 Aulas GrátisAprenda com o curso básico de Python gratuito da Hashtag: 10 aulas práticas, exercícios e projetos reais para sair do zero em programação.
- Agentes RAG com Python: como criar um assistente de IAAprenda a criar Agentes RAG com Python do zero: LangChain, FAISS e OpenAI para montar um assistente de IA que responde com base nos seus documentos.
- 25 Tipos de Gráficos em Python: Guia Completo com CódigoAprenda a criar os principais tipos de gráficos em Python com Plotly: barras, pizza, mapas e mais, com código pronto para copiar e usar.
Posts mais recentes da Hashtag Treinamentos
- Planilha de Controle de Notas Fiscais no Excel [Grátis]Baixe a planilha de controle de notas fiscais no Excel grátis: calcule ISS e retenções, veja o que está em aberto e gere a cobrança de cada nota de serviço.
- Qual IA usar na empresa: ChatGPT, Claude ou Perplexity?Qual IA usar na empresa: veja as diferenças entre ChatGPT, Claude e Perplexity e quando cada um rende mais em cada área da sua equipe.
- Apostilas Gratuitas em PDF: Excel, Power BI, Python e IABaixe apostilas gratuitas em PDF de Excel, Power BI, Python, Claude e agentes de IA, com exercícios e gabarito. Escolha a sua e comece hoje.








