Vamos arquivar o SAPO Vídeos

O videos.sapo.pt vai fechar as portas a 17 de setembro, e os vídeos vão ser apagados. Estamos a tentar arquivar o conteúdo antes que isso aconteça. Podes ajudar de duas formas:
  1. Descarregar os vídeos: se tiveres uns terabytes livres, podes correr o programa abaixo para ir descarregando novos vídeos;
  2. Descobrir vídeos novos: temos indexados 1.5 milhões de vídeos, mas estima-se que haja 5 milhões.

No fim da página há algumas estatísticas que descrevem o estado do projecto.

Descarregar vídeos

Nota: Só temos instruções para GNU/Linux.

  1. Faz download do saca-sapos
  2. Descomprime o programa (tar xzf /caminho/para/o/saca-sapos.tar.gz)
  3. Instala as dependências: curl e jq
  4. Corre o programa a partir de uma pasta com espaço suficiente para descarregar o número de vídeos especificado:
    $ cd /pasta/com/bastante/espaço
    $ /caminho/para/o/saca-sapos download QUANTIDADE_DE_VIDEOS TEU_ENDERECO_DE_EMAIL
    
  5. Vamos contactar-te a pedir que nos mandes os vídeos que descarregaste, por isso garante que usas um endereço válido
  6. Quando o programa acabar, já está! Corre novamente para descarregar mais uns quantos vídeos.

O programa saca até 4 vídeos em simultâneo, mas pode ser configurado para mais ou menos. Por exemplo:

$ cd /pasta/com/bastante/espaço
$ PROCS=10 /caminho/para/o/saca-sapos download 1000 eu@exemplo.pt

Para ajudar a ter noção de quanto ocupa um certo número de vídeos, temos nas estatísticas o tamanho médio por vídeo.

Descobrir vídeos novos

O repositório de código deste projecto tem os scripts usados para varrer a plataforma e guardar todos os identificadores de vídeos que encontrar. Por exemplo, é possível varrer todas as 1468 páginas da categoria "Animação" (3) correndo o comando:

./get-category.sh 3 1468

No total, temos recolhidos 1.5 milhões de vídeos. Supostamente há cerca de 5 milhões. Diponibilizamos os metadados dos vídeos encontrados (1.5 GiB) em formato JSONL. Cada linha é um objecto JSON que representa um vídeo.

Os endpoints de pesquisa devolvem os metadados completos de cada resultado. Não sabemos de nenhum endpoint que devolva os metadados de um vídeo em específico.

Coisas que já foram feitas:

Os scripts à volta desta tarefa não estão muito optimizados para distribuir trabalho / fazer trabalho incremental, mas qualquer ajuda a descobrir mais vídeos é bem-vinda. Mandem mensagens no fediverso (@hugopeixoto@ciberlandia.pt) para coordenarmos trabalho.

Estatísticas

Número de vídeos conhecidos: <%= videos_known %>

Número de vídeos descarregados: <%= videos_downloaded %> (<%= (videos_downloaded * 100.0 / videos_known).round(2) %>%)

Tamanho descarregado: <%= h bytes_downloaded %>

Tamanho médio: <%= h(bytes_downloaded / videos_downloaded) %>/vídeo

Tamanho total estimado: <%= h bytes_downloaded / videos_downloaded * videos_known %>

Número de pessoas a descarregar vídeos: <%= users %>

Tamanho descarregado por cada pessoa:

    <% downloads_per_user.each_with_index do |downloads, index| %>
  1. <%= h downloads["size"] %> (<%= downloads["total"] %> vídeos)
  2. <% end %>