Escolar Documentos
Profissional Documentos
Cultura Documentos
PRÉ REQUISITOS
O primeiro passo é adicionar a extensão Tampermonkey em seu navegador e em seguida instalar o EME Logger Script
que fornecerá os dados de inicialização da página.
Concluindo essas etapas mínimas mencionadas acima, podemos dar continuidade as etapas, que são muitas. Estamos
apenas no início de uma grande caminhada até o objetivo final.
Como você pode ver a extensão Tampermonkey está adicionado ao navegador e o Script (EME Logger Script) está sendo
executado (“injetado”) na página.
3. Comece a reproduzir o conteúdo que deseja descriptografar (sempre dê, preferência aos módulos seguintes
do curso, pois o primeiro geralmente são conteúdos (vídeos) de apresentação e não tem proteção widevine
(DRM - Digital Rights Management).
4. Abra as ferramentas do desenvolvedor da web (ctrl+shift+c ou F12) e clique na guia console.
5. Atualize a página e reproduza o conteúdo novamente, sempre executando na faixa intermediária do vídeo do
curso.
6. Na barra de filtro, procure por MediaKeySession::generateRequest na qual você verá um campo chamado
Init Data: abaixo dele vai estar o PSSH desse determinado curso.
O que é o PSSH? – Protection System Specific Header (Caixa de cabeçalho específica do sistema de proteção no Formato de
arquivo de mídia) contém metadados necessários para um sistema específico de proteção de conteúdo para adquirir
uma licença e descriptografar o conteúdo de mídia
Precisamos também inserir e configurar alguns binários nas variáveis de ambiente do Windows (nada mais é
que o executável (.exe) de um software, sem a necessidade de instalar ele diretamente na máquina)
Vai ser necessário esses binários (.exe) contidos no disco C:\ e inseridos no PATH nas variáveis de ambiente do
sistema:
Você precisa copiar e colar o caminho da pasta de cada um deles no PATH e todos eles devem estar acima do
caminho do executável do python
C:\aria2
C:\mp4decrypt
C:\shaka-packager
Se você chegou até aqui, então você deve se considerar um usuário intermediário. Pois de fato você é!
Insira a chave e o ID da chave no keyfile.json (abrir com qualquer editor de texto como o Notepad ou outro
de sua escolha)
Renomear o arquivo .env.sample para .env (você só precisa fazer isso se planeja usar o arquivo .env para armazenar
seu token de portador)
Depois é só executar o CMD dento da pasta do Script Udemy-downloader e executar o comando abaixo:
python main.py -c (A URL do curso para download) -b (O token do portador a ser usado) --download-assets --
download-captions --disable-ipv6 --log-level DEBUG
O conteúdo será baixado e salvo na pasta out_dir, com os arquivos de vídeo (.mp4) e áudio (.m4a) separados e
criptografados.
Recomendo usar o advanced renamer para remover esse trecho dos nomes dos arquivos, pois facilitará depois
quando você descriptografar e unir os dois arquivos para formar um único arquivo de mídia e renomear novamente
para o nome padrão correspondente, sem esse nome (mais a opção fica a cargo de cada um)
Depois é só separar o par de cada arquivo (mp4 e m4a) em uma pasta independente, abrir o cmd naquela pasta
onde estão o arquivo de vídeo e áudio daquela aula e usar os comandos
KEY é a chave que você conseguiu, não é necessário colocar ID:KEY, apenas 1: KEY (só inserir 1 invés do id, pois é
somente a chave que vai descriptografar o arquivo)
Essa foi uma escolha que fiz, renomear o arquivo de áudio com um “OK” e o arquivo de vídeo com o nome
“encrypt_video”. Você tem que definir um nome de entrada e outro de saída que você queira
Depois é só deletar os dois arquivos do meio que estão criptografados e usar o software MKVToolNix para unir os
dois arquivos descriptografados de áudio e vídeo. Isso para cada par de mídia (aula). É simples, porém trabalhoso,
até que alguém faça um Script automatizando esse processo é isso daí que temos por hoje. Boa Sorte!