Como realizar o download de DataSets disponíveis na Internet (principalmente do Kaggle) remotamente pelo Colab sem o uso de API tokens.
Aproximadamente entre os minutos 11:30 e 15 da lição 3 do curso de DL do fastai o palestrante cita que é possível baixar datasets da plataforma Kaggle a partir de ferramentas para terminal desenvolvidas pela equipe do site. Essa parte da lição tem um enfoque apenas em direcionar o que deve ser feito, de modo que a obtenção dos dados não é demonstrada durante a exposição.
Aqueles que já tentaram obter o dataset por meio do método padrão perceberam que muitas etapas são necessárias. A minha experiência abrangiu criar o API token na minha conta na página do Kaggle, fazer o download deste, realizar o upload para o terminal remoto do Google Colab (GitHub ou interface), criar o diretório adequado e mudar permissões para o arquivo (comando chmod). Só então foi possível executar as linhas de comando para download e descompactação.
O tamanho do último parágrafo mostra que o procedimento relatado não é tão simples e direto. Por isso, acredito que uma outra maneira seja mais dinâmica e eficaz.
Ao entrar em alguma página de DataSet do Kaggle, temos uma interface semelhante ao ilustrado na Figura 1.
Na figura 1, aparece uma opção para download destacada em roxo. Ao clicar sobre esta, o navegador que estiver sendo utilizado irá iniciar o download.
Como a ideia é não enchermos memória da máquina local com o DataSet, mas sim baixá-lo remotamente, o download deve ser interrompido. Ao se direcionar para a aba de downloads do navegador e clicar com o botão direito sobre o arquivo pausado, é possível obter o link utilizado pelo site para download.
A figura 2 ilustra essa seleção para o Google Chrome, porém é totalmente análoga para outros navegadores, como Mozilla Firefox. Em resumo, basta clicar sobre o arquivo na pasta de downloads do navegador e escolher a opção equivalente a “Copy link address” ou “Copy Download Link”.
Uma observação a ser feita é de que quando o usuário abre o link de download da Figura 1 em uma nova guia, aparece um link do tipo dataset-name/downloads. Esse arquivo HTML é uma página web que referência o link correto, e, portanto, não é o que deve ser obtido.
Com o link correto copiado, já é possível se direcionar ao Google Colab ou para a plataforma de acesso remoto utilizada.
Com o comando Linux “wget” que baixa arquivos da web, é possível fazer o download do dataset selecionado como ilustra a figura 3 (lembre-se que comandos linux no Colab devem ser precedidos por exclamação).
Na figura 3 aparece um aviso de que o link é muito longo, de modo que a modificação de nome faz com que o arquivo comprimido baixado venha com um nome “estranho” e também bastante longo.
Como o arquivo foi corretamente baixado e trata-se apenas de um nome inadequado, portanto o comando:
mv ‘nome_grande’ dataset-name.zip
é suficiente para obter uma nomenclatura aproprida (se for outro tipo de compressão, atribua a extensão adequada).
Por fim, basta dar um ‘unzip’ (ou o comando adequado para o tipo de compressão) no arquivo comprimido e o dataset já está disponível para acesso.
Resumo
1- Acessar a página do Dataset e iniciar o download.
2- Interromper o download e obter o link para este na aba de downloads.
3- Executar o comando wget <link> no terminal utilizado.
4- Mudar o nome do arquivo ‘.zip’ para um nome mais adequado (opcional).
5- Descompactar o arquivo.
OBS: caso o terminal utilizado não possua os comandos corretos para descompactar, basta instalá-los com apt-get install <command>. Se necessário, atualize com o apt-get update.