English
LogoPicture Pump (c) 2000-2011 by Zmey Petroff
 
Онлайн-помощь к программе

Помощь
Начало. Подготовка проекта.

Перед тем, как начать подготовку проекта для массового скачивания картинок, необходимо выяснить следующие вещи:

  • Полный адрес сайта, с которого требуется скачать картинки.
  • Способ нумерации картинок на сайте.

Полный адрес сайта. Под полным адресом в программе подразумевается не только правильно указанный адрес хоста (сервера), с которого нужно скачать картинки, но и все остальные части адреса: путь к файлам и/или скриптам, параметры (для скрипта или cgi-программы), и т.п. Для того, чтобы выяснить полный адрес страницы, на которой расположена скачиваемая картинка, необходимо загрузить ее в окно браузера и просмотреть ее свойства (в которых, собственно, и указывается полный URL страницы). В Microsoft Internet Explorer свойства страницы можно просмотреть здесь: Файл-> Свойства.

Следует учесть следующие моменты и ограничения:

  • Если на странице используются фреймы, в свойствах будет показан не адрес страницы, на которой расположена картинка, а адрес фрейма, в котором эта страница находится. Для определения адреса страницы в таком случае следует просмотреть HTML-код фрейма.
  • Адреса картинок могут генерироваться JavaScript-апплетом, расположенным на страницах. Поскольку выполнение апплетов на JavaScript не поддерживается Picture Pump, остается лишь вручную разобрать JavaScript-код, выяснить, какие URL он генерирует, и настроить Picture Pump на скачивание непосредственно самих картинок.
  • Picture Pump не поддерживает (пока) работу по протоколам, отличным от HTTP.

Способ нумерации картинок на сайте. Как правило, на серверах, содержащих большие коллекции картинок (да и небольшие тоже), для доступа к следующей картинке не нужно вводить полностью новый URL (в противном случае администрация сервера сошла бы с ума на третий день - ведь вносить изменения в такую "коллекцию" сплошная морока). Достаточно немного поменять адрес предыдущей картинки, чтобы увидеть следующую. В 90% случаев для доступа к следующей картинке нужно увеличить (или уменьшить) некоторое число в URL: http://www.server.com/images/cool/zoom.asp?id=15 - адрес текущей картинки, http://www.server.com/images/cool/zoom.asp?id=16 - адрес следующей картинки.

В данном примере меняется число, расположенное после "id=". В большинстве случаев имеет смысл поставить начальное значение счетчика в 1 - если на сервере есть "дополнительные" картинки, недоступные напрямую через ссылки на веб-страницах, они также будут скачаны. Далее заполняем настройки проекта:

  • Вводим в соответствующее поле полный URL сайта. Заменяем изменяющуюся часть адреса символом подстановки (в приведенном выше примере изменяющаяся часть адреса расположена после символов "id=". Символ подстановки по умолчанию - @. Таким образом, в поле для URL сайта следует ввести строку http://www.server.com/images/cool/zoom.asp?id=@).
  • Если в URL сайта символ @ является значимым, можно выбрать другой подстановочный символ или задать свой.
  • Устанавливаем начальное значение счетчика. Обычно это единица.
  • Устанавливаем инкремент счетчика. Для увеличения счетчика на 1 для каждого следующего адреса инкремент нужно установить в 1.
  • При необходимости задаем шаблон для счетчика.

Ну вот, пожалуй, и все. Можно начинать скачивание.

Отладка. Настройка проекта и исправление ошибок.

Точная настройка счетчика с использованием шаблона.

Возможность указывать для счетчика шаблон введена в программу начиная с версии 1.3. Хотя использование шаблона для счетчика может показаться излишеством, в некоторых случаях шаблон не только полезен, но без него практически невозможно обойтись. Представим себе следующую ситуацию:

Картинки на сайте нумеруются трехзначными числами от 001 до 999 (например, www.server.com/images/pic_000_.jpg, www.server.com/images/pic_001_.jpg, и т.п.). Если не использовать шаблон для счетчика, придется сделать три практически одинаковых проекта:

В первом будут перебираться все номера с 1 до 9:

www.server.com/images/pic_00@_.jpg, счетчик от 1 до 9;

Во втором - все номера с 10 до 99:

www.server.com/images/pic_0@_.jpg, счетчик от 10 до 99;

И в третьем - все номера со 100 до 999:

www.server.com/images/pic_@_.jpg, счетчик от 100 до 999;

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

Использование шаблона для счетчика как раз и позволяет избежать такой нудной и малопроизводительной работы. При помощи шаблона можно задать ширину счетчика в цифровых позициях (для указания цифровой позиции нужно вписать в шаблон символ подстановки - по умолчанию это @). Так, для приведенного выше примера нужно всего лишь задать шаблон для счетчика (нам нужны три цифровые позиции - значит, шаблон должен иметь вид "@@@"). Итак:

www.server.com/images/pic_@_.jpg, счетчик устанавливаем в 1, шаблон - в @@@. Подстановка при этом будет осуществляться в два этапа:

  1. Сначала к текущему значению счетчика будет применен шаблон (для счетчика, равного 12, результатом будет 012 - с ведущими нулями).
  2. Далее полученная строка будет подставлена в URL сайта вместо символа подстановки (www.server.com/images/pic_@_.jpg -> www.server.com/images/pic_012_.jpg).

Кроме автоматического добавления ведущих нулей в счетчик, использование шаблона позволяет автоматически завершить проект, как только счетчик превысит отведенное в шаблоне число позиций (в приведенном выше примере - когда счетчик достигнет 1000).

При желании в шаблон счетчика можно вводить и другие символы (не только символ подстановки). Такие символы будут напрямую перенесены в URL сайта: При шаблоне "@@-@" и счетчике 12 в URL сайта будет вставлена подстрока "01-2" (минус перенесен из шаблона без изменений).

При самостоятельном заполнении полей рекомендуется проверять текущие настройки URL сайта, счетчика и шаблона нажатием кнопки "Тест" (с красной галочкой). Кроме проверки установок нажатие на эту кнопку выводит расширенную информацию о настройках шаблона и следующие 10 адресов, которые будут сгенерированы.

Избавляемся от баннеров.

Для избавления от баннеров и прочих мелких картинок, которыми так изобилуют некоторые сайты, надо заполнить фильтры. Тогда картинки, полные адреса которых совпадут с каким-либо фильтром, скачиваться не будут.

Делается это (обычно) так:

  1. Запускаем проект. Жмем "начать закачку". Прищелкиваем кнопку "блокировать очередь на скачивание" - маленькая такая, с крестиком. Ждем, пока в очереди не накопится около 10-20 файлов. Прерываем проект. Можно отключиться от интернета на то время, пока мы будем исключать баннеры.
  2. Теперь открываем настройки проекта и смотрим, что там в очереди у нас лежит. У баннеров и прочих счетчиков адреса обычно типа "a10.bb.com/cgi-bin/banner.cgi?id=45367257" (по крайней мере, в большинстве случаев это именно так). Ставим выделение на один из "баннерных" адресов и жмем "Копировать в буфер".
  3. Переходим на вкладку "Фильтры". Жмем "Добавить фильтр", а в появившемся окошке - "Вставить из буфера". Вставится ПОЛНЫЙ адрес баннера. Его нужно подредактировать - исключить все части, которые могут измениться (мы же не один баннер блокируем, а все похожие). Обычно можно оставить только имя сервера, а вместо остального поставить звездочку (от "http://a10.bb.com/cgi-bin/banner.cgi?id=45367257" оставим только "http://a10.bb.com/*", а можно и еще короче - "http://*.bb.com/*"). Жмем "добавить".
  4. Опять переходим на вкладку "Очередь" и жмем "применить фильтры". Все баннеры, исключенные нашим нововведенным фильтром, из очереди удалятся. Смотрим, что в очереди осталось, и если там еще есть адреса баннеров, повторяем с пункта 2. А если нет, выходим из настроек проекта, подключаемся к интернету и запускаем скачивание.

Кроме непосредственного задания фильтров, можно поступить проще: поставить ограничение на минимальный объем скачиваемых картинок (Конфигурация проекта -> Ответ -> Не скачивать файлы короче ХХ байт). В качестве нижней границы нужно указать такое число, чтобы баннеры и другие мелкие картинки просто не скачивались (так, для некоторых систем баннерного обмена баннеры не могут быть больше 15 килобайт по объему). К сожалению, данный метод имеет несколько недостатков:

  • Могут заблокироваться и нужные картинки (особенно если указать слишком большой минимальный объем);
  • На получение размера скачиваемого файла тратится лишнее время (в то же время при блокировании баннеров с помощью фильтров Picture Pump их ВООБЩЕ не пытается скачивать);
  • Некоторые серверы не возвращают информацию о размере файлов, поэтому ограничение по объему файла с ними может не работать.
Советы по оптимизации проектов.

  • По возможности старайтесь настраивать проекты на скачивание непосредственно картинок, а не страниц, на которых они расположены. Это позволяет обойтись без заполнения фильтров (нет необходимости исключать баннеры) и ускоряет закачку в два-три раза.
  • Попробуйте указать в настройках HTTP запроса минимальное количество полей, при которых сервер еще не возвращает сообщение об ошибке. Это несколько сократит объем передаваемой информации и (теоретически) ускоряет закачку.
Часто задаваемые вопросы (FAQ).

При скачивании получаются файлы в непонятном формате. Что делать?

Возможно, в настройках проекта неверно указан тип URL (вместо HTML-страниц указано, что адрес смотрит непосредственно на картинки). То есть при закачке стоял флажок "URL сайта указывает на картинки". Смысл этого флажка как раз в том и заключается, что URL (адрес) указывает напрямую на картинки - то есть то, что получим, не надо просматривать на предмет ссылок на графические файлы, а надо сохранять на диск... При просмотре в текстовом редакторе такие файлы содержат ясно видимые теги HTML (например, <html> - признак HTML-документа).

Для исправления ситуации установите тип URL сайта правильно (как указывающий на HTML-страницы).

При запуске проекта ничего не качается, растет счетчик ошибок.

Причин может быть несколько. Самая очевидная (и самая распространенная ошибка) - неверно указанный URL сайта. При этом сервер выдает ошибки о ненайденных документах, и ничего не скачивается (что, в общем-то, естественно).

Для исправления ситуации настройте URL сайта и параметры счетчика правильно.

Другие возможные причины:

  • Сервер перенаправляет Picture Pump на другой сайт (при использовании версий программы, не поддерживающих перенаправление). Обновите версию программы.
  • На HTML-страницах нет прямых ссылок на картинку, а для составления адреса картинки используется JavaScript-апплет. Постарайтесь перенастроить проект на скачивание непосредственно картинок.

Для того, чтобы установить причину сбоев при скачивании, следует выполнить следующее:

  • Просмотрите журнал ошибок проекта. В журнале точно описано, какая именно ошибка случилась, что очень помогает при поиске причин ошибки.
  • Просмотрите, какие именно URL генерируются при запуске проекта (это можно сделать, нажав кнопку "Тест" в основном окне - с красной галочкой. Введите один из полученных адресов в браузере и посмотрите, что получится. Скорее всего, придется исправить настройки URL сайта, счетчика и шаблона.
А чем смотреть файлы *.ppp?

Это мой любимый вопрос. :) Когда мне его задали в первый раз, я, честно говоря, не знал, плакать мне или смеяться.

Люди! Файлы *.ppp - это не графические файлы! И даже не сборники скачанных картинок. Это всего лишь файлы проектов, в которых хранятся настройки проекта (URL сайта, настройки запроса, шаблон счетчика, текущее значение счетчика, содержимое очереди на скачивание и т.п.)

Сами картинки складываются (иногда штабелями) в каталоге, который указан в файле проекта как целевой каталог для картинок. Кстати, в главном окне программы даже кнопочка есть для запуска Проводника (нужный каталог как раз и откроется). Для просмотра картинки обычно достаточно отыскать ее файл в окошке Проводника и щелкнуть на нем мышкой (для пользователей Windows 95 - двойной щелчок).

Designed by Zmey Petroff © 2000-2011