2

Когда я пытаюсь извлечь все JPEG из этого сайта (http://www.zodiackillerfacts.com/gallery/) с помощью wget:

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

он загружает только миниатюры. Как я мог бы скачать полноразмерные JPEG-файлы, используя wget вместо того, чтобы просматривать все 1000 изображений по одному и щелкать по всем из них? Все эти картинки находятся в разных "альбомах" на сайте.

1 ответ1

1

Вам понадобится скрипт, который анализирует страницы галереи, а затем использует wget. Для этого конкретного сайта скрипт может быть довольно простым, примерно так:

#!/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

Здесь мы извлекаем HTML-код первой страницы, анализируем ссылки галереи, извлекаем HTML-код для каждой галереи, создаем каталог для нее и извлекаем все изображения. Не очень красивый или крепкий, но, похоже, он справляется с работой.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .