Quer aprender a fazer uma análise de dados do YouTube com VBA para automatizar e facilitar esse processo do seu canal?
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo!
Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:
Fala, Impressionadores! Na aula de hoje vamos mostrar como fazer algo muito legal que vocês podem ter que fazer alguma vez se lidam com Youtube: análise de dados do YouTube com VBA!
A ideia da aula de hoje é fazer uma análise de dados do YouTube com VBA. Está preparado?
Nós já temos um outro post aqui no Blog de como usar API no VBA, que complementa e detalha muito do que vamos mostrar na aula de hoje. É altamente recomendável que você assista essa aula antes do post de hoje.
Inicialmente, temos uma tabela pré-montada no Excel, e queremos retornar uma resposta que vai nos dar 500 vídeos do canal da Hashtag ordenados por mais visualizações é da “categoria” VBA, ou não.
Essas informações serão retornadas a partir dos vídeos e seus respectivos IDs do site do Youtube, mais especificamente falando das descrições dos vídeos.
Abaixo mostramos a tabela com as informações “esperadas” vazias, antes de executarmos o código, que vai receber as informações. Veja:
Ativar referências no VBA
Importantíssimo para a aula de hoje, e para o desempenho da API da forma como esperamos, teremos que ativar duas referências dentro do VBA.
Mais especificamente falando, serão as referências “Microsoft WinHTTP Services” (destacada abaixo) e também a “Microsoft Scripting Runtime”
Após ativá-las, poderemos partir para o código que vai desempenhar a API do Youtube no VBA, que está a seguir:
Sub APIYouTube()
'https://developers.google.com/youtube/v3/getting-started?hl=pt-br
'https://console.cloud.google.com/
Dim requisicao As New WinHttpRequest
Dim resposta As Object
Dim url As String, parametros As String
lin = 2
Do While Cells(lin, 1).Value <> ""
idVideo = Cells(lin, 1).Value
'chaveAPIYouTube = "Colocar sua chave da API aqui"
' Definir a URL e os parâmetros
url = "https://www.googleapis.com/youtube/v3/videos"
parametros = "?key=" & chaveAPIYouTube & "&id=" & idVideo & "&part=snippet&fields=items(snippet(description))"
' Enviar a requisição
requisicao.Open "Get", url & parametros
'requisicao.SetRequestHeader
requisicao.Send
' Tratamento de erros
If requisicao.Status <> 200 Then
MsgBox "Erro: " & requisicao.ResponseText
Exit Sub
End If
' Converter o JSON
Set resposta = JsonConverter.ParseJson(requisicao.ResponseText)
' Tratar as informações
Dim itens As Collection
Set itens = resposta("items")
On Error GoTo TratamentoDeErros
Set videoYT = itens(1)
On Error GoTo 0
If InStr(videoYT("snippet")("description"), "CURSO COMPLETO VBA IMPRESSIONADOR") > 0 Or InStr(videoYT("snippet")("description"), "esperavbaimpressionador") > 0 Then
Cells(lin, 4).Value = "Sim"
Else
Cells(lin, 4).Value = "Não"
End If
VoltarTratamentoErro:
lin = lin + 1
Loop
Exit Sub
TratamentoDeErros:
Resume VoltarTratamentoErro
End Sub
Explicações e comentários a respeito do código acima (APIYoutube):
Rodando o código, e exibindo um resultado para a variável “videoYT” exemplo na caixa de verificação imediata do VBA, teremos:
Deixando o código rodar de uma vez só (sem pausas), teremos o seguinte resultado final:
Hoje você aprendeu a lidar com a análise de dados do Youtube com VBA!
Mais especificamente conseguimos entender e ver como uma API no VBA para entender detalhes (a descrição) dos vídeos aqui do canal, e fazer verificações e análises diretamente deles!
Usamos conceitos importantes além de lidar com APIs, que foram: função de texto InStr, Estrutura If, Estrutura de repetição Do While; entre outras estruturas que falamos em outros posts aqui do Blog também!
Valeu, Impressionadores! Fique ligado no nosso canal do Youtube para mais conteúdo de VBA! Até o próximo post!
Para acessar outras publicações de VBA, clique aqui!
Expert em VBA e Power BI da Hashtag Treinamentos. Auxilia no suporte aos alunos da Hashtag Treinamentos e na criação de conteúdos para os que acompanham nossos canais.