104 lines
4.7 KiB
Plaintext
104 lines
4.7 KiB
Plaintext
<style>
|
|
body { max-width: 960px; margin: 0 auto; }
|
|
code, pre { font-size: 1rem; font-weight: bold; }
|
|
</style>
|
|
<body>
|
|
<h1>Vamos arquivar o SAPO Vídeos</h1>
|
|
|
|
O <a href="https://videos.sapo.pt">videos.sapo.pt</a> 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:
|
|
|
|
<ol>
|
|
<li><a href="#descarregar">Descarregar os vídeos</a>: se tiveres uns terabytes livres, podes correr o programa abaixo para ir descarregando novos vídeos;</li>
|
|
<li><a href="#descobrir">Descobrir vídeos novos</a>: temos indexados 1.5 milhões de vídeos, mas estima-se que haja 5 milhões.</li>
|
|
</ol>
|
|
|
|
<p>No fim da página há algumas <a href="#estatisticas">estatísticas</a> que descrevem o estado do projecto.</p>
|
|
|
|
<h2 id="descarregar">Descarregar vídeos</h2>
|
|
|
|
<p>
|
|
Nota: Só temos instruções para GNU/Linux.
|
|
</p>
|
|
|
|
<ol>
|
|
<li>Faz <a href="/saca-sapos.tar.gz">download do saca-sapos</a></li>
|
|
<li>Descomprime o programa (<code>tar xzf /caminho/para/o/saca-sapos.tar.gz</code>)</li>
|
|
<li>Instala as dependências: <code>curl</code> e <code>jq</code></li>
|
|
<li>
|
|
Corre o programa a partir de uma pasta com espaço suficiente para descarregar o número de vídeos especificado:
|
|
<pre>$ cd /pasta/com/bastante/espaço
|
|
$ /caminho/para/o/saca-sapos download QUANTIDADE_DE_VIDEOS TEU_ENDERECO_DE_EMAIL
|
|
</pre>
|
|
</li>
|
|
<li>Vamos contactar-te a pedir que nos mandes os vídeos que descarregaste, por isso garante que usas um endereço válido</li>
|
|
<li>Quando o programa acabar, já está! Corre novamente para descarregar mais uns quantos vídeos.</li>
|
|
</ol>
|
|
|
|
<p>O programa saca até 4 vídeos em simultâneo, mas pode ser configurado para mais ou menos. Por exemplo:</p>
|
|
<pre>$ cd /pasta/com/bastante/espaço
|
|
$ PROCS=10 /caminho/para/o/saca-sapos download 1000 eu@exemplo.pt
|
|
</pre>
|
|
<p>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.</p>
|
|
|
|
<h2 id="descobrir">Descobrir vídeos novos</h2>
|
|
|
|
<p>
|
|
O <a href="https://git.ansol.org/hugopeixoto/sapo-videos/">repositório de
|
|
código deste projecto</a> 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:
|
|
</p>
|
|
<pre>./get-category.sh 3 1468</pre>
|
|
|
|
<p>
|
|
No total, temos recolhidos 1.5 milhões de vídeos. Supostamente há cerca de 5 milhões.
|
|
Diponibilizamos os <a href="/videos.jsonl">metadados dos vídeos encontrados (1.5 GiB)</a> em formato JSONL.
|
|
Cada linha é um objecto JSON que representa um vídeo.
|
|
</p>
|
|
|
|
<p>
|
|
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.
|
|
</p>
|
|
|
|
<p>Coisas que já foram feitas:</p>
|
|
<ul>
|
|
<li>Varridos os resultados das pesquisas por letras únicas de <code>a</code> a <code>z</code> (<code>./get-search.sh a 105</code>, etc);</li>
|
|
<li>Varridos os resultados das pesquisas por um só espaço (<code>./get-search.sh " " 13716</code>);</li>
|
|
<li>Varridos todos os utilizadores dos vídeos encontrados nos passos anteriores;</li>
|
|
<li>Varridas todas as categorias;</li>
|
|
<li>Varridos os resultados das pesquisas por um números até 16 (<code>./get-search.sh 1 6007</code>, etc);</li>
|
|
</ul>
|
|
|
|
<p>
|
|
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 (<a href="https://ciberlandia.pt/@hugopeixoto">@hugopeixoto@ciberlandia.pt</a>) para coordenarmos trabalho.
|
|
</p>
|
|
|
|
<h2 id="estatisticas">Estatísticas</h2>
|
|
|
|
<p>Número de vídeos conhecidos: <%= videos_known %></p>
|
|
<p>Número de vídeos descarregados: <%= videos_downloaded %> (<%= (videos_downloaded * 100.0 / videos_known).round(2) %>%)</p>
|
|
<p>Tamanho descarregado: <%= h bytes_downloaded %></p>
|
|
<p>Tamanho médio: <%= h(bytes_downloaded / videos_downloaded) %>/vídeo</p>
|
|
<p>Tamanho total estimado: <%= h bytes_downloaded / videos_downloaded * videos_known %></p>
|
|
<p>Número de pessoas a descarregar vídeos: <%= users %></p>
|
|
|
|
<p>Tamanho descarregado por cada pessoa:</p>
|
|
<ol>
|
|
<% downloads_per_user.each_with_index do |downloads, index| %>
|
|
<li><%= h downloads["size"] %> (<%= downloads["total"] %> vídeos)</li>
|
|
<% end %>
|
|
</ol>
|
|
|
|
<footer>
|
|
<hr />
|
|
|
|
<p>Este projecto é <a href="https://git.ansol.org/hugopeixoto/sapo-videos/">Software Livre</a></p>
|
|
</footer>
|
|
</body>
|