Como realizar o download de DataSets disponíveis na Internet (principalmente do Kaggle) remotamente pelo Colab sem o uso de API tokens.

Matheus Costa
IEEE CIS UnB
Published in
4 min readNov 6, 2019

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.

Figura 1 — Dataset no Kaggle

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”.

Figura 2 — Obtenção do link no Chrome

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).

Figura 3 — Download do link pelo wget

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.

Figura 4 — Descompactação

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.

--

--

Matheus Costa
IEEE CIS UnB

Electrical Engeneering Graduate in University of Brasilia, Brasil and IEEE Computational Intelligence Society UnB Member.