Краулер
Краулер ходит по страницам сайта и забирает файлы, которые на них найдёт. На этой странице - сайты, которые он знает по имени, виды страниц, которые он читает на остальных, куда он может ходить и что оставляет, когда берёт браузер, как обходится с сайтом и какие страницы вы смотрите перед прогоном.
Сайты, которые он знает по имени
Для нескольких сайтов у Краулера есть рецепт - описание того, где сайт держит свои файлы и как их листать. На этих сайтах мастер выбирает Краулер и ничего не спрашивает о виде страницы.
| Сайт | Что Краулер там берёт |
|---|---|
| 500px | фотографа, ленту вроде популярных фото, галерею, фотоисторию или одно фото; длинная сторона до 2048 пикселей |
| Bing Images | результаты поиска картинок |
| Flickr | фотопоток, альбом, избранное, пул группы, тег, Explore, одно фото или поиск; оригинал - только если автор разрешил скачивание, иначе самый большой размер, какой есть |
| Google Images | результаты поиска картинок |
| IMDb | фильм, персону или галерею |
| сабреддит или пост |
Bing Images и Google Images читаются браузером. Перед прогоном на Google Images поиск открывается, чтобы вы на него посмотрели, - см. Страницы, которые вы смотрите перед прогоном.
Для IMDb мастер спрашивает Скачивать изображения и Скачивать видео; видео IMDb отдаёт не больше 100. Ещё он показывает IMDb устанавливает условия использования своих данных., и проект можно создать, только отметив Я это прочитал.
Для Reddit мастер показывает уже заполненное поле Идентификатор приложения Reddit. Reddit отвечает только зарегистрированному приложению; если упираетесь в ограничения, зарегистрируйте своё на reddit.com/prefs/apps как installed app и впишите его идентификатор в поле Идентификатор приложения Reddit.
Любая другая страница
На сайте, которого он не знает по имени, на карточке Краулера написано Работает с любой страницей, но особенностей этого сайта не знает. Выберите Краулер - и мастер спросит Откуда брать файлы? Заранее ничего не выбрано: что это за страница, знаете только вы.
| Выбор | Что это значит |
|---|---|
| Только эта страница | Файлы, на которые ссылается указанный адрес, и ничего дальше |
| Галерея или альбом | Страница с набором изображений |
| Ветка форума | Одна тема, с вложениями и картинками в постах |
| Весь сайт или его часть | По умолчанию только указанная страница и то, что под ней |
Затем Типы файлов спрашивают, что Скачивать: Изображения - отмечено по умолчанию, - Видео, Звук, Документы и Архивы. Файл, род которого не выдаёт ни адрес, ни ответ сайта, берётся всё равно.
Кроме Куда можно ходить?, о котором ниже, мастер больше ничего не спрашивает; остальные настройки каждого выбора - на странице Настройки сайта у проекта.
Куда он может ходить
Для вида Весь сайт или его часть мастер спрашивает ещё Куда можно ходить? Там перечислены области от самой узкой до самой широкой, и работе принадлежит всё, что покрывает шаблон выбранной строки. Для https://example.com/gallery/7/ это строки example.com/gallery/7/*, example.com/gallery/*, example.com/* и *.example.com/* - весь сайт вместе с поддоменами.
Остальное - в разделе Адреса на странице Настройки сайта у проекта:
- Дополнительные адреса - по одному шаблону адреса в строке, например
site.com/gallery/*. Ссылки, которые им отвечают, тоже принадлежат работе; строка, выбранная в мастере, хранится здесь первой. - Исключения - шаблоны адресов, куда обход не ходит, чем бы на них ни указывали. Они сильнее адресов выше.
- Шагов от начала - насколько далеко обход может уйти от адреса: один шаг на каждую пройденную ссылку, по умолчанию 3, не больше 20. Следующая страница того же списка не стоит ничего, как и файл.
- Внешние ссылки - ссылки, ведущие за пределы работы: Игнорировать, Только загружать файлы с внешних ссылок - по умолчанию - или Переходить на страницы и загружать файлы.
- Разрешённые внешние адреса - куда обход может выйти;
*, значение по умолчанию, - куда угодно. - Какие адреса считать файлами - по одному правилу в строке, например
site.com/get-image/* = pictures, для скрипта, отдающего картинку, или ссылки на загрузку без расширения. - Правила перехода - ваши собственные условия для ссылки: Не ходить, если или Ходить, только если.
Сохранять структуру папок сайта в разделе Папки раскладывает всё так, как разложил сайт, - сперва хост, дальше папки из адреса. По умолчанию это выключено, и всё ложится вместе.
Что он оставляет
Фильтры на странице Настройки сайта у проекта:
- Минимальный размер и Максимальный размер, в байтах; 0 - без ограничения. Файл, размера которого сайт не назвал, берётся. Для вида Ветка форума минимальный размер начинается с 20480 байтов: в посте аватарки, смайлики и значки рангов - такие же картинки.
- Минимальная ширина и Минимальная высота, в пикселях. Размер изображения лежит внутри файла, так что решается это уже после скачивания: изображение, которое не подошло, удаляется, и журнал об этом сообщает.
- Правила отбора - ваши собственные условия для файла: Не брать, если.
Для вида Только эта страница в разделе Фильтры есть ещё Какие адреса считать файлами: с этой страницы никуда не ходят, поэтому адрес, выдающий свой род только в ответе сайта, никто и не запросит.
Для вида Галерея или альбом в разделе Листание есть Страниц одного списка: сколько страниц того же списка пройти. 0, значение по умолчанию, - все; это правильно для альбома и неверно для бесконечной ленты.
Когда он берёт браузер
Некоторые сайты рисуют страницу скриптом, и без браузера на ней нечего находить. Использовать браузер в разделе Браузер на странице Настройки сайта у проекта - это Определить автоматически, Да или Нет. Если решать ему, Краулер читает первую страницу каждого сайта обоими способами и оставляет тот, что нашёл больше; журнал пишет какой, с обоими числами. Браузер в десятки раз медленнее.
Когда страница ничего не дала, журнал пишет На … ничего не найдено - возможно, странице нужен браузер.
Манеры
Манеры на странице Настройки плагина у проекта - это то, как Краулер обходится с сайтом:
- Секунд между запросами - пауза между любыми двумя запросами прогона, к каким бы сайтам они ни шли, по умолчанию 1, не больше 60. Чем она короче, тем вероятнее, что сайт начнёт отказывать или закроет доступ совсем; 0 - кратчайший путь к заблокированному IP-адресу. См. Темп, который держит прогон.
- Сохранять страницы - хранит каждую прочитанную страницу, чтобы редактор рецептов мог повторить прогон по ним, не беспокоя сайт. Включено по умолчанию.
- Использовать рецепты - на сайте, который Краулер знает по имени, он идёт по рецепту этого сайта. Выключите, чтобы обойти сайт обычным способом. Включено по умолчанию.
- Распознавать хостинги картинок - читает ссылку на хостинг картинок как картинку с одной пересадкой. Стоит выключить, если хостинг поменял страницы и вместо картинки стала приезжать реклама. Включено по умолчанию.
Краулер скачивает по два файла одновременно, считая все сайты вместе. Когда сайт просит сбавить темп, он сбавляет, а журнал пишет … попросил сбавить темп, ослабляем нажим. Секунд: ….
Страницы, которые вы смотрите перед прогоном
Некоторым сайтам нужно, чтобы вы сперва что-то сделали руками: вошли, прошли проверку или уточнили поиск. Показывать страницу перед запуском, тоже в разделе Манеры, решает, когда открывается начальная страница:
- Никогда - прогон начинается сразу.
- Если сайт этого требует - по умолчанию. Страница открывается на сайте, чей рецепт говорит, что вы там нужны, например на Google Images.
- Всегда - страница открывается для каждого адреса проекта, а для шаблона - один раз, на его первом адресе.
Страница открывается в окне Проверьте это, прежде чем начнётся скачивание и ждёт. Сделайте то, что нужно сайту, и нажмите Продолжить: прогон начнётся с того адреса, на котором вы остановились, так что на поиске сохранятся и сам запрос, и выставленные фильтры. Отмена останавливает прогон, не дав ему начаться.
Флажок На этом сайте нужно сначала войти на последнем шаге мастера ставит Всегда.
Починить парсер
На вкладке Свойства проекта, в окне NeoDownloader, есть карточка с кнопкой Починить парсер: она открывает редактор рецептов на последнем прогоне этого проекта, на шаге, где улов стал пустым. Редактор экспериментальный. Перед тем как его открыть, NeoDownloader предупреждает: Редактор рецептов ещё не доделан - и починить прогон может не получиться.