- Как заказать парсер сайта
- Видеоинструкции по настройке
- Возможности программы-парсера
- Действия в парсере
- Раздел «Работа с HTML»
- Раздел «Текстовые»
- Раздел «Перекодировка и форматирование»
- Раздел «Проверка и сравнение»
- Раздел «Разное»
- Раздел «Функции массива»
- Раздел «Числовые»
- Раздел «Работа с переменными»
- Раздел «Листы и книги Excel»
- Раздел «Обработка файлов из папки»
- Раздел «HTTP запрос»
- Раздел «Internet Explorer»
- Раздел «Управление парсером»
- Раздел «Веб-запросы, XML, макросы VBA»
- Недокументированные действия
- Работа с браузером (Chrome и т.п.)
- Отключенные (устаревшие) действия
- Интерфейс программы
- Использование браузера
- Ошибки при парсинге
- Вывод массива значений в одну ячейку
- Обход защиты Qrator, Incapsula и CloudFare
- Ошибка: сервер не ответил за 9 секунд
- Парсер перезаписывает данные в первой строке листа
- Невозможно запустить макрос, - нет доступа к проекту VBA
- Ошибка Compile error in hidden module
- Ошибка загрузки страницы по HTTPS (SSL Error)
- Дополнительные возможности
- Зарезервированные переменные и подстановочные коды парсера
Кеширование страниц в парсере
- Переменные в парсере
- Обновление строк в существующей таблице при парсинге
- Переключение между наборами настроек в парсере
- Запуск мониторинга цен по расписанию
- Запуск парсера по расписанию
- Программный запуск парсера из внешнего макроса
- Доп. опции парсера (файл parser.ini)
- Наборы действий
- Прочие статьи по настройке парсера
- Коды останова парсера, и перехода на другое действие
- Плагины для парсера
- Запуск нескольких парсеров по очереди
- Обработка капчи (Captcha) в парсере
- Прокси серверы
Кеширование страниц в парсере |
Кеширование в парсере — это сохранение результатов запросов к сайту на компьютере пользователя в виде файлов.
Кеширование преследует несколько целей:
- уменьшение нагрузки на сайт, во избежание блокировки (бана) со стороны сайта
- ускорение работы парсера (доступ к файлу кеша выполняется намного быстрее, чем запрос к сайту)
- хранение результатов запросов для последующего анализа (в случае, когда некоторые страницы сайта не обрабатываются при многочасовом парсинге, можно в кеше найти результаты проблемных запросов, и понять причину ошибки)
Парсер умеет кешировать следующие данные:
- загружаемые страницы (действие «Загрузить страницу по ссылке», все 4 режима загрузки)
- результаты POST запросов (действие «Выполнить POST запрос»)
- скачиваемые файлы (настраиваемые на вкладке «Загрузка файлов»)
- некоторые результаты обработки файлов (например, считанное содержимое PDF файлов)
Механизм работы кеширования в программе «Парсер сайтов и файлов»
Страницы сайтов кешируются парсером принудительно (если кеширование включено), т.к. при выполнении GET / POST запроса в большинстве случаев необходимо обращение на сайт. Парсер сохраняет результат каждого запроса в текстовый файл в специальной папке, и при выполнении очередного запроса сначала ищет ранее созданный файл. Если файл найден, то считывается содержимое из этого файла (кеша), и только если файла нет, то выполняется запрос к сайту. По умолчанию страницы сайта не кешируются, и каждый раз грузятся заново.
В кеш записываются только страницы с непустым ответом сервера, причем независимо от кода ответа сервера (200 ok или 403 нет доступа или 404 страница не найдена — файл кеша будет создан). В кеш не пишутся пустые ответы (если сервер не вернул данные, а есть только заголовки ответа), а также страницы, на которых обнаружена капча (если включено распознавание капчи в парсере). Причем, если капча успешно решена, и повторная загрузка страницы идет без капчи, то файл в кеше перезапишется.
В то же время, скачиваемые файлы (например, изображения) почти всегда кешируются самой Windows. Выполняя повторный запрос для скачивания фото по ссылке, мы получаем этот файл намного быстрее, чем при первой загрузке, что говорит о том, что Windows взяла этот файл из кеша Internet Explorer. В большинстве случаев нас такой вариант устраивает, т.к. маловероятно, что по одной и той же ссылке скачаются разные фото в разное время. По этой причине кеширование загружаемых файлов включено по умолчанию, но парсер для этого кеширования ничего не делает (также отправляет запрос на скачивание, при включенном кешировании, — просто этот запрос не доходит до сайта). Если же мы в настройках снимаем галочку кеширования файлов (такое нужно очень редко, но бывает), — парсер перед запросом принудительно удаляет в кеше Windows ранее скачанный файл, и после этого загружает его заново.
Когда нужно и когда не нужно использовать кеширование
В подавляющем большинстве случаев рекомендуется оставить настройки кеширования без изменений:
Настройки кеширования по умолчанию: кеширование страниц выключено, кеширование скачиваемых файлов включено.
Действие опции «Включить кеширование для веб-страниц» распространяется на все действия «Загрузить страницу по ссылке» в парсере, но есть возможность включать или отключать кеширование для отдельных действий.
Имеет смысл включить кеширование страниц в случае, если вы парсите сайт / каталог товаров без цен (например, нужны только названия и характеристики товаров, которые не меняются). Поскольку страницы каталога (со списком товаров) могут меняться (товары добавляются и исчезают), для таких страниц кеширование должно быть отключено, а для страниц товаров (которые неизменны, ибо не содержат обновляемой информации о ценах и наличии) кеширование можно включить.
Кроме того, ВРЕМЕННОЕ включение кеширования пригодится, когда вы настраиваете сложный парсер, а страницы грузятся очень медленно. Чтобы не тратить время на ожидание загрузки страниц, на время тестирования включите кеширование в настройках парсера. Но не забудьте после завершения настройки отключить кеширование страниц, а то парсер не будет при использовании парсера обращаться на сайт вообще.
Кеширование скачиваемых файлов нужно отключать в случае, если по одной и той же ссылке в разные дни будет скачиваться файл с новыми данными. Обычно это касается скачивания прайс-листов, а также выгрузок из различных систем, где по одной и той же ссылке сайт формирует файл с актуальными данными (котировки, детализации, и т.п.)
Общий кеш для нескольких парсеров
Бывает, что несколько отдельных парсеров работают с одним и тем же сайтом, при этом используя кеширование страниц. В этом случае можно сделать так, чтобы все парсеры работали с одной и той же папкой кеша.
В настройках кеширования присутствует опция «Использовать кеш другого парсера», где можно выбрать, кеш какого из парсеров использовать.
Дополнительные инструкции
- Управление кешированием в парсере (как включать / отключать / очищать кеш программно для всего парсера, или для отдельных команд)
- Расположение файлов кеша на компьютере
- Добавить комментарий
- 894 просмотра
Комментарии
Подскажите с чем может быть связанно замедление работы примерно в 1000 раз, скорость интернета таже, сайт летает, парсер не менял. Может в экселе что-то поменять или очистить кэш?