Skip to content

Instantly share code, notes, and snippets.

@fredericogg
Last active December 30, 2023 16:16
Show Gist options
  • Save fredericogg/494a20770d33d5ca48d3 to your computer and use it in GitHub Desktop.
Save fredericogg/494a20770d33d5ca48d3 to your computer and use it in GitHub Desktop.
Calcula o tempo total de uma playlist no Youtube. É só colar no console na página da playlist. Fiz esse script porque não achei o tempo total da playlist 😅.
(function() {
var timeSeconds = 0;
var timestampDivList = document.querySelectorAll(".timestamp");
for(var i = 0; i < timestampDivList.length; i++) {
var timestampDiv = timestampDivList[i];
var timeStr = timestampDiv.childNodes[0].innerHTML
var timeParts = timeStr.split(":");
var seconds = (timeParts[0] * 60) + parseInt(timeParts[1]);
timeSeconds += seconds;
}
var hours = (timeSeconds / 60) / 60;
var minutes = (timeSeconds / 60) % 60;
var seconds = (timeSeconds % 60);
var result = parseInt(hours) + ":" + parseInt(minutes) + ":" + parseInt(seconds);
alert(result);
})();
@nvrossett
Copy link

nvrossett commented Oct 1, 2016

Cara muito boa a sacada!!!! Antigamente o Youtube mostrava o tempo de uma playlist, de uns anos para cá tiraram, e sempre tinha que calcular na mão para planejar quando eu ia ver aquela série de video aulas sobre um tema específico (Ex. Angular 2), agora teu script facilitou minha vida, vlw

@Raphango
Copy link

Genial!

@heldertosta
Copy link

Parabéns !! Foi de muita utilidade para mim. Muito Obrigado!

@andersoncoimbra
Copy link

Parabens Cara. Genial mesmo

@matheussantanads
Copy link

Parabéns!!

@Pedrohf360
Copy link

Muito bom!! Valeuuu! =D

Copy link

ghost commented Jun 24, 2017

Muito bom, valeu pelo script, ficou muito bom!

@nvrossett
Copy link

Para quem está com a nova versão do youtube onde modificaram o visual e um pouco a estrutura, esse código não deve mais funcionar, mas fiz um Fork desse código e uma adaptação que funciona para o novo site.

https://gist.github.com/nvrossett/696e6d5910a8d6b7c6e639ab21baebdd

@cesarhilario
Copy link

Pelo visto o youtube mudou novamente. Dei um fork e já está funcionando 👍
https://gist.github.com/cesarhilario/28ec17d630f04fc3a3c915cfc56c0452

@guianzollin
Copy link

Muito bom! Obrigado!

@JocsaPB
Copy link

JocsaPB commented Jan 17, 2019

Só copiar e colar no console. Fantástico! Obrigado!

@f-mtz
Copy link

f-mtz commented Mar 22, 2020

gente, perdoem a minha ignorância, mas não entendi como usar o recurso, poderiam me ajudar?

@ThalysSilva
Copy link

@EmmanuellaAlbuquerque
Copy link

EmmanuellaAlbuquerque commented Sep 1, 2020

gente, perdoem a minha ignorância, mas não entendi como usar o recurso, poderiam me ajudar?

Vai na página da playlist do youtube que você deseja saber o tempo total e vai no inspecionar elemento da página. Então, no Developer Tools que se abre clica na aba Console, cola o script e aperta enter.

@priscillasantana
Copy link

Recriei e arrumei os bugs, só pegar pessoal: https://github.com/ThalysSilva/Projetos-JavaScript/blob/master/playlist-time_v2.js

Não tá funcionando aqui :/

@marcelemonteiro
Copy link

Muito bom cara! Eu ia perder tempo contando na calculadora, muito besta kkkk que bom que achei seu script!! Obrigada!

@R2Campagnoli
Copy link

Pessoal, o código acima não funcionou no meu. Então vi o da @giovanacgois e funcionou. Poém encontrei um erro quando o vídeo possui mais de 1 hora. A hora não é computada.
Segue o código corrigido: https://gist.github.com/R2Campagnoli/750c3c2b43bc4642b4ce415b44f311ae
Obrigado @fredericogg e @giovanacgois pelo código

@aslac2020
Copy link

tem o codigo para c# ?

@jeffersondesantana
Copy link

Obrigado, me ajudou a calcular o tempo da playlist de Java do DevDojo.

@zoyo23
Copy link

zoyo23 commented Feb 12, 2022

Comigo não rolou só dava NAN, ai eu fiz algumas alterações na busca das informações e rolou tranquilo.

https://gist.github.com/zoyo23/e4050ba6a2f672949f39bb6beca0694c

@vizanchetta
Copy link

cmg n rolou, só dava 0:0:0, fiz o desse zoyo23 e deu bom 👍
https://gist.github.com/zoyo23/e4050ba6a2f672949f39bb6beca0694c

@LauraGenari
Copy link

muito bommm, só precisei fazer umas alterações pq acho q yt atualizou, e ficou assim (function() {

var timeSeconds = 0;

var timestampDivList = Object.entries(document.querySelectorAll("ytd-playlist-video-list-renderer ytd-playlist-video-renderer ytd-thumbnail-overlay-time-status-renderer span")).map(item=> item[1].innerText)

for(var i = 0; i < timestampDivList.length; i++) {

var timeParts = timestampDivList[i].split(":");

var seconds = (timeParts[0] * 60) + parseInt(timeParts[1]);

timeSeconds += seconds;

}

var hours = (timeSeconds / 60) / 60;
var minutes = (timeSeconds / 60) % 60;
var seconds = (timeSeconds % 60);

var result = parseInt(hours) + ":" + parseInt(minutes) + ":" + parseInt(seconds);

alert(result);

})();

@alexmota-dev
Copy link

Recriei e arrumei os bugs, só pegar pessoal: https://github.com/ThalysSilva/Projetos-JavaScript/blob/master/playlist-time_v2.js

Valeu paizão, se é 10 kskssk funcionou.

@alexmota-dev
Copy link

Infelizmente seu código não funciona amigo, mas foi uma ideia genial, de 2016 a 2020 deve ter ajudado muita gente, obrigado.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment