Desafio
Dada uma lista de reprodução do YouTube, produza o número de vídeos nela.
I / O
A lista de reprodução será fornecida como um URL; por exemplo, https://www.youtube.com/playlist?list=PL_3jnZNPYn7qUatgDYBS5NShkfXoehSRC
(esta é uma lista de reprodução que uma amiga me enviou para tentar ouvir K-Pop porque ela é obcecada por ela e eu não gosto: P)
O link para uma lista de reprodução é do formato https://www.youtube.com/playlist?list=<id>
. A entrada é a URL, não o ID.
A saída deve ser um número inteiro único, indicando quantos vídeos há nesta lista de reprodução. Você pode exibir o número total de vídeos ou o número de vídeos não excluídos, o que for mais difícil para você.
Casos de teste
https://www.youtube.com/playlist?list=PL_3jnZNPYn7qUatgDYBS5NShkfXoehSRC -> 12
https://www.youtube.com/playlist?list=PLIEbITAtGBebWGyBZQlkiMXwt30WqG9Bd -> 114 OR 1
Sinta-se livre para adicionar mais casos de teste.
Respostas:
05AB1E , 22 bytes
Assume que o URL é passado sem o
https://
.Código:
Usa a codificação 05AB1E . Não pode ser experimentado online, devido ao acesso à Internet.
Explicação:
Isto é o que recebo ao executar na linha de comando:
fonte
Scala 2.12, 138 bytes
Salve
something.scala
e executescala something.scala {url}
.fonte
JS (ES6), 68 bytes
Cole isso no seu console no youtube.com para tentar:
fonte
MATL , 15 bytes
Agradecemos ao Hyper Neutrino por encontrar um erro, agora corrigido.
A entrada é uma cadeia de caracteres entre aspas simples. A saída é o número de vídeos não excluídos.
Aqui está um exemplo executado com os dois casos de teste. Em 13 de junho de 2017, o número de vídeos não excluídos nas listas de reprodução é 12 e 1, respectivamente.
Como funciona
fonte
"wner"
? Ainda vai funcionar?bash + curl + gnu grep, 32 bytes
Finalmente dando uma chance ao Code Golf:
curl -s
para fazer o download sem nenhuma saída extra.Isso é jogado de como eu faria isso praticamente.
fonte
PowerShell, 55 bytes
Navegue até o site. Converta o objeto em uma string que é a fonte html. Analise a sequência que possui um número anterior a "vid" com regex.
A lógica funciona com os dois casos de teste.
fonte
Haskell 161 bytes
fonte