Como Fazer Download de Transcrições de Vídeos do YouTube
Hoje em dia, os vídeos online estão por toda parte. A transcrição desses vídeos é uma ferramenta útil para tornar o conteúdo mais acessível, ajudar na otimização para buscas e até na análise de dados. Mas, muitas vezes, é complicado obter essas transcrições, principalmente dos vídeos do YouTube. Neste guia, vou mostrar como você pode baixar as transcrições de vídeos do YouTube usando Python, de forma simples e direta. Além disso, o processo pode ser automatizado para vários fins, como análise de dados e resumo de conteúdos.
Ferramentas e Bibliotecas Necessárias
Para conseguir as transcrições, vamos utilizar uma biblioteca chamada youtube-transcript-api. Com ela, dá pra pegar as legendas diretas dos vídeos, o que facilita bastante, especialmente para aqueles que já têm legendas automáticas.
Instalando a Biblioteca
Primeiro, precisamos instalar a biblioteca youtube-transcript-api. A instalação é fácil e você pode fazer isso com o seguinte comando:
bash
!pip install youtube-transcript-api
Uma vez que a instalação esteja feita, já estamos prontos para começar a extrair as transcrições.
Extraindo o ID do Vídeo e Buscando a Transcrição
O primeiro passo é ter uma função que pega o ID do vídeo a partir de sua URL. Depois, precisamos de outra função que busca a transcrição. Veja um exemplo de como fazer isso:
python
from youtube_transcript_api import YouTubeTranscriptApi
import re
def extract_video_id(url):
Este padrão busca o ID do vídeo de uma URL típica do YouTube.
pattern = r"(?:v=|/)([0-9A-Za-z_-]{11}).*"
match = re.search(pattern, url)
return match.group(1) if match else None
def fetch_transcript(video_id, language=’pt’):
try:
Busca a transcrição na língua especificada
transcript = YouTubeTranscriptApi.get_transcript(video_id, languages=[language])
return transcript
except Exception as e:
print(f"Erro ao buscar transcrição: {e}")
return None
A função extract_video_id usa uma expressão regular para pegar o ID do vídeo. Já a função fetch_transcript tenta obter a transcrição, retornando-a se for bem-sucedida, ou retornando um erro caso contrário.
Salvando a Transcrição em um Arquivo
Depois de conseguir a transcrição, é prático salvá-la em um arquivo para usar depois. Abaixo está uma função que faz isso:
python
def save_transcript_to_file(transcript, file_name=’transcript.txt’):
with open(file_name, ‘w’, encoding=’utf-8′) as f:
for entry in transcript:
start_time = entry[‘start’]
text = entry[‘text’]
f.write(f”{start_time:.2f}: {text}n”)
Essa função lê cada entrada da transcrição e salva o tempo de início junto com o texto correspondente em um arquivo.
Automatizando o Processo
Para facilitar ainda mais, podemos criar uma função que junta todos os passos anteriores. Isso permite que o usuário só precise fornecer a URL do vídeo e a língua desejada:
python
def export_youtube_transcript(url, language=’pt’, file_name=’transcript.txt’):
video_id = extract_video_id(url)
if not video_id:
print(“URL do YouTube inválida.”)
return
transcript = fetch_transcript(video_id, language)
if transcript:
save_transcript_to_file(transcript, file_name)
print(f"Transcrição salva em {file_name}")
else:
print("Nenhuma transcrição disponível ou falha ao buscar.")
youtube_url = input(“Digite a URL do vídeo do YouTube: “)
export_youtube_transcript(youtube_url)
Conclusão
Esse script permite que você baixe transcrições de vídeos do YouTube de forma prática e automatizada. É uma ótima solução para gerar conjuntos de dados, realizar análises de texto ou simplesmente arquivar vídeos que você considera interessantes. Além disso, essa técnica pode ser expandida para usar modelos que analisam sentimentos, resumem conteúdos ou até para criar legendas em outros idiomas. Isso torna o processo bastante útil para diversas aplicações, especialmente em Inteligência Artificial.
Pronto para testar? Vá em frente e comece a experimentar!