Faça o download de todos os sites jpegs com wget em vez de apenas miniaturas

2

Quando tento remover todos os jpegs deste site ( link ) usando o wget:

wget -A jpg,jpeg -r http://www.zodiackillerfacts.com/gallery/

só faz o download das miniaturas. Como eu seria capaz de baixar os jpegs em tamanho real usando wget ao invés de passar por todas as 1000 imagens uma por uma e clicar em todas elas? Essas fotos estão todas em diferentes "álbuns" no site.

    
por user175747 25.11.2012 / 07:31

1 resposta

1

Você precisará de um script que analise as páginas da galeria e use o wget. Para este site em particular, o script pode ser bastante direto, algo assim:

#!/bin/bash

wget -qO - "http://www.zodiackillerfacts.com/gallery/" | \
 egrep -o 'thumbnails\.php\?album=[0-9]+' | \
  sort -u | \
    while read gallery
    do
      wget -O "/tmp/$$" "http://www.zodiackillerfacts.com/gallery/$gallery"
      album=$(egrep -m1 -o '<title>[^<]+' /tmp/$$ | \
               sed -e 's/^<title>//' -e 's/[^a-zA-Z0-9 :-()]//g')
      mkdir "$album" || continue
      cd "$album"
      egrep -o 'src="albums/[^"]*' "/tmp/$$" | \
       sed -e 's/thumb_//' \
           -e 's!^src="!http://www.zodiackillerfacts.com/gallery/!' | \
        wget -i -
      cd ..
      rm "/tmp/$$"
    done

Aqui, buscamos o HTML da primeira página, analisamos os links da galeria, buscamos o HTML de cada galeria, criamos um diretório para ele e buscamos todas as imagens. Não é muito bonito ou robusto, mas parece fazer o trabalho.

    
por 21.12.2012 / 00:38

Tags