Урок №19. Диагностика неполадок

В предыдущих видео мы освоили принципы настройки программы. Теперь мы покажем как действовать в случаях, когда созданная настройка работает не так, как хотелось бы. Настоятельно рекомендуем просмотреть видео ОТ НАЧАЛА И ДО КОНЦА! Для тех, кто вечно спешит))), под видео приведены ссылки на его отдельные части, касающиеся специфических моментов диагностики.

Настроили кампанию, а она работает некорректно или вообще не запускается? Посмотрев данное видео вы сможете быстро найти и исправить ошибку в настройке.



Для выборочного просмотра:

Напомним, что в Datacol Вы так-же найдете уже готовые парсера:

Текст видео (если Вам проще воспринимать информацию после прочтения) »

Для начала разберемся, в каких случаях кампания работает некорректно. Во-первых, о некорректной работе говорит отсутствие результатов сбора данных после завершения работы кампании. Кроме того, если результатов нет в течение 2-3 минут (даже если кампания еще выполняется), это также чаще всего свидетельствует о некорректной настройке. Напомним, результаты работы кампании отображаются в соответствующей панели после ее запуска. Первые результаты появляются в тот же момент, когда программа их находит.

Как видим, предварительно можно сделать вывод, что кампания работает корректно, ведь результаты появились.
Во-вторых, об ошибках настройки свидетельствует слишком малое количество результатов, по крайней мере, меньше того, которое мы ожидали собрать. Однако этот критерий относителен, ведь в интерфейсе программы по умолчанию отображаются только первые 50 найденных результатов. В полном объеме данные доступны после экспорта в файл, CMS или базу данных. Данное ограничение можно изменить в настройках кампании.

Также, стоит помнить, что демо версия программы собирается не более 25 результатов.
В-третьих, одно или несколько полей данных могут вообще не собираться. Это видно по пустым колонкам в таблице результатов.

Обратите внимание, что это актуально только если вся колонка пустая (то есть значение не найдено ни на одной странице). Это можно проверить применив разные виды сортировки к таблице. Если же нашлось хотя бы несколько групп данных с заполненным значением поля, то это обычно значит, что: либо, поле данных доступно не на всех страницах, либо на разных страницах оно должно получаться с помощью разных сигнатур, либо подобранные сигнатуры можно сделать более универсальными, чтобы значение поля находилось везде, где оно есть. Под сигнатурами здесь подразумеваются xpath или регулярные выражения.

Четвертый случай — это отсутствие выгруженных в соответствии с настройками экспорта результатов работы кампании. Имеется в виду, что результаты получены (то есть видны в панели результатов), однако не сохранены в файл, CMS или базу данных.

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

Есть один универсальный прием, который стоит попробовать перед исследованием любых проблем, кроме тех, которые касаются экспорта собранных данных. Нужно заменить стандартный загрузчик на браузер. Суть в том, что изначально настройка кампании осуществляется с помощью мастера, в которым вебстраницы грузятся именно браузером, а не встроенным загрузчиком Datacol. Поэтому, если для работы, из соображений скорости обработки, все же выбран стандартный загрузчик, могут возникать непредвиденные ситуации. Они объясняются тем, что встроенный загрузчик и браузер, грузят страницы и формируются DOM модель по разному. Для примера данная кампания. Запускаем и видим, что кампания быстро завершается, при этом не собрав данных вообще. Установим браузер в качестве загрузчика. Проверяем. Теперь все нормально. Обратите внимание, если в качестве загрузчика используется плагин, то данный шаг можно пропустить, поскольку в таких случаях он обычно не дает результата.

Если установка браузера в качестве загрузчика не помогла решить проблему, то можно вернуть начальные настройки.

Теперь рассмотрим первые 2 случая, в частности, когда данные вообще не найдены, либо их найдено слишком мало. Здесь стоит начать с изучения логов. Практически всегда логи позволяют определить причину неполадки. Рассмотрим это на нескольких примерах. Запустим настройку. Кампания завершилась без результатов. Просмотрим ее логи.

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

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

Теперь результаты появляются и все отрабатывает как надо. Заметим, что если после увеличения таймаута хотя бы до 20-30 секунд проблема остается, то чаще всего сайт либо висит, либо заблокировал нас. Это можно проверить открыв страницу сайта в обычном браузере на нашем компьютере. Помимо того, ошибки загрузки могут возникать в сценарии браузера. Об их диагностике и исправлении мы поговорим в дальнейших видео.

Рассмотрим еще один пример. Опять же, кампания завершилась, а результатов нет. Откроем лог. В нем мы видим, что в самом начале работы на исходной странице, ссылок не найдено. Соответственно Datacol остановил свою работу, поскольку в очередь не было добавлено новых страниц для обработки. Для начала стоит проверить, а есть ли они вообще на странице. Чтобы это сделать, откроем страницу в нашем браузере по умолчанию. Это можно сделать кликнув по ссылке левой кнопкой мыши.

Видим, что ссылки на посты, а также ссылки пагинации присутствуют. Значит проблема скорее всего заключается в некорректно заданных правилах сбора ссылок. В большинстве случаев подкорректировать настройки сбора ссылок можно с помощью пикера. Задано 2 xpath выражения, однако найденных соответствий нет. Некорректные xpath выражения можно удалить. Теперь подберем новые, корректные. Принципы подбора Xpath для сбора ссылок были изложены в первых видеоинструкциях. Сохраняем подобранные сигнатуры. Запускаем кампанию для теста. Теперь результаты появляются и все отрабатывает как надо.

Рассмотрим другой пример. Видим, что поле “регион работы” не собирается. Опять же, перед тем как грешить на настройку, проверим наличие информации на самом исходном сайте. Данные присутствуют, поэтому ищем проблему в настройке.

Наиболее вероятная причина — некорректно настроенные сигнатуры сбора данных, то есть xpath или регулярные выражения. Предварительно для корректировки можно воспользоваться Picker-ом. Кликнем дважды левой кнопкой на поле данных, чтобы открыть пикер в режиме подбора сигнатур для полей данных.

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

Так нам удалось подкорректировать сбор данных. Следует отметить, что иногда проблемы сбора данных найти и исправить не так просто. Иногда для их решения нужно проводить более тщательное тестирование. Об этом мы расскажем в дальнейших видео.

Сейчас мы только упомянем, что если пустым оказывается поле с изображением, которое мы загружаем на локальный компьютер, то первым делом стоит проверить включен ли режим сохранения тегов, а уже потом переходить к другим мероприятиям. Например протестируем кампанию. Видим, что поле фото пустое. Проверим включено ли сохранение тегов. Оно выключено. Включим его. Протестируем повторно. Теперь все работает корректно. Более подробно о диагностике проблем сохранения изображений мы поговорим в дальнейших видео.

Рассмотрим случай отсутствия выгруженных в соответствии с настройками экспорта результатов работы кампании. Напомним, при настройке с помощью мастера собранные данные по умолчанию должны выгружаться в Excel файл, который генерируется после окончания работы кампании в папке Мои документы. Имя файла по умолчанию соответствует названию кампании. Заметим, что при наличии результатов сбора данных файл должен генерироваться внезависимости от того завершилась ли кампания сама, либо была остановлена пользователем. Однако настройки сохранения можно переопределить. В дереве быстрой настройки видно, какие форматы экспорта используются в настройке.

Чаще всего, ошибки экспорта видны в логе. Кампания завершилась, перейдем в Мои документы. Файла с экспортом здесь нет. Посмотрим лог работы кампании. Перейдем в конец лога, ведь экспорт обычно осуществляется в конце работы. Здесь мы находим описание ошибки экспорта. Видимо она произошла из за того, что на компьютере нет директории, в которую настроено сохранение. Исправим это. Можно выбрать определенную папку для сохранения, а можно оставить путь пустой строкой. В последнем случае, сохранение будет осуществляться в папку Мои документы. Сохраним и протестируем. Теперь файл сохранился.

Более продвинутые методы диагностики и исправления ошибок работы кампаний будут приведены в дальнейших видео.