Como Enviar Vídeos ao YouTube Usando a API Oficial
Publicar vídeos diretamente no YouTube por meio de código é uma prática cada vez mais utilizada por desenvolvedores e criadores de conteúdo que desejam automatizar o processo. Neste guia, você aprenderá a configurar e utilizar a YouTube Data API v3 com Python para realizar o upload de vídeos a partir de arquivos locais.
Pré-requisitos
- Uma conta Google ativa.
- Python instalado em sua máquina (preferencialmente a versão 3.6 ou superior).
- Bibliotecas
google-auth-oauthlib
egoogle-api-python-client
instaladas viapip
.
Passo 1: Criar um Projeto no Google Cloud
Acesse o Console do Google Cloud e crie um novo projeto. Dê um nome que identifique facilmente o propósito do projeto, como youtube-video-upload.
Passo 2: Ativar a API YouTube Data API v3
No menu lateral do Console, vá até APIs e serviços > Biblioteca. Busque por YouTube Data API v3 e ative-a para seu projeto.
Passo 3: Criar Credenciais de Acesso
Vá para APIs e serviços > Credenciais e clique em Criar credenciais.
- Escolha ID do cliente OAuth.
- Defina o tipo como Aplicativo da Web.
- Adicione o URI de redirecionamento:
http://localhost:8080/
. - Salve o Client ID e o Client Secret.
Passo 4: Autorizar Acesso à Conta do YouTube
Utilize o seguinte código Python para autenticar sua aplicação e obter permissões:
from google_auth_oauthlib.flow import InstalledAppFlow
SCOPES = ['https://www.googleapis.com/auth/youtube.force-ssl']
flow = InstalledAppFlow.from_client_secrets_file(
'client_secret.json', SCOPES)
credentials = flow.run_local_server(port=0)
Certifique-se de substituir client_secret.json
pelo caminho correto do arquivo que você baixou do console.
Passo 5: Fazer o Upload do Vídeo
Com as credenciais obtidas, utilize o código abaixo para realizar o upload do vídeo:
from googleapiclient.discovery import build
from googleapiclient.http import MediaFileUpload
from googleapiclient.errors import HttpError
youtube = build('youtube', 'v3', credentials=credentials)
video_path = 'video.mp4'
title = 'Título do Vídeo'
description = 'Descrição do vídeo para o YouTube'
tags = ['exemplo', 'upload', 'api']
try:
request = youtube.videos().insert(
part="snippet,status",
body={
"snippet": {
"title": title,
"description": description,
"tags": tags,
"categoryId": "22"
},
"status": {
"privacyStatus": "private"
}
},
media_body=MediaFileUpload(video_path)
)
response = request.execute()
print("Vídeo enviado com sucesso!")
except HttpError as error:
print(f"Ocorreu um erro: {error}")
Importante:
- O campo
categoryId
define a categoria do vídeo.22
é para “Pessoas e Blogs”. Veja mais categorias aqui. - Configure o
privacyStatus
comoprivate
,unlisted
oupublic
.
Documentação Oficial
Para mais detalhes sobre os métodos disponíveis da API, consulte a documentação oficial da YouTube API v3.
Conclusão
Automatizar o upload de vídeos para o YouTube é uma excelente forma de poupar tempo, especialmente em processos repetitivos como uploads em massa ou integração com outras plataformas. Utilizando a API oficial, seu conteúdo pode ser publicado com controle total sobre título, descrição, visibilidade e mais.
Se você tiver dúvidas ou quiser compartilhar seu projeto, deixe um comentário abaixo!