O khan-dl é uma ferramenta baseada em Python desenvolvida para facilitar o download de conteúdos da Khan Academy. Ela permite que estudantes, educadores e pesquisadores acessem vídeos e materiais educativos sem a necessidade de uma conexão constante com a internet, sendo ideal para ambientes com conectividade limitada ou para otimização de planos de dados móveis.
Requisitos e Instalação
Para utilizar o khan-dl, é necessário ter o Python (versão 3.7 ou superior) instalado em seu sistema. A ferramenta depende de bibliotecas consagradas como yt-dlp para o processamento de vídeos e beautifulsoup4 para a extração de dados das páginas web.
A instalação pode ser realizada via terminal utilizando o gerenciador de pacotes pip:
# Instalação ou atualização da ferramenta
pip install khan-dl --upgrade
Após a conclusão, você pode verificar se o utilitário foi configurado corretamente solicitando o menu de ajuda:
khan-dl --help
Comandos e Modos de Uso
O khan-dl oferece diferentes abordagens para capturar o conteúdo, desde downloads específicos até navegação interativa.
1. Download de um Curso Específico
Se você possui a URL direta de uma unidade ou curso, utilize o parâmetro -c (ou --course_url). Isso automatiza a busca por todos os vídeos contidos naquele link específico.
# Exemplo: Baixando um curso de Álgebra Linear
khan-dl -c "https://pt.khanacademy.org/math/linear-algebra"
2. Modo Interativo
Para quem prefere navegar pelas categorias disponíveis (Matemática, Ciência, Computação, etc.) diretamente pelo terminal, o modo interativo é a melhor escolha. Ele permite selecionar áreas de interesse através de menus dinâmicos.
# Iniciar interface de seleção no terminal
khan-dl -i
3. Download Massivo
Para criar um espelhamento completo de áreas de conhecimento, o comando -a (ou --all) inicia o processo de download de todos os setores disponíveis na plataforma.
# Baixar todo o conteúdo disponível
khan-dl -a
Funcionalidades Técnicas
- Mapeamento de Estrutura: O software identifica automaticamente a hierarquia do curso (Domínio > Unidade > Lição) e organiza os arquivos localmente seguindo essa lógica.
- Gestão de Dependências: Utiliza o
prompt-toolkitpara fornecer uma interface de linha de comando (CLI) intuitiva e responsiva. - Progresso em Tempo Real: Exibe barras de progresso durante o download, facilitando o monitoramento de grandes volumes de dados.
Melhores Práticas para Organização
Ao baixar grandes volumes de dados educativos, recomenda-se organizar os diretórios de saída para facilitar a navegação posterior. Uma estrutura sugerida seria:
Acervo_Educativo/
├── Ciencias/
│ ├── Fisica/
│ └── Biologia/
├── Matematica/
│ ├── Geometria/
│ └── Calculo/
└── Computacao/
└── Programacao_JS/
Considerações de Uso e Armazenamento
Dado que arquivos de vídeo podem ocupar um espaço considerável em disco, é importante monitorar a capacidade de armazenamento do dispositivo. Além disso, embora a ferramenta permita o acesso offline, o download inicial exige uma conexão estável. É aconselhável realizar os downloads em redes Wi-Fi de alta velocidade antes de se deslocar para áreas offline.
O uso dos conteúdos baixados deve respeitar os termos de serviço da Khan Academy, priorizando fins educacionais, pessoais e não comerciais.