Импорт/экспорт контента

Проблемы парсинга

Прежде чем парсить html-код – его надо откуда-то взять.

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

Некоторые сайты без труда опознают ботов для парсинга (как бы те искусно ни маскировались под «белковых» пользователей) и блокируют получение страниц. Зачастую непросто добраться до содержимого фреймов и участков, подгружаемых через Ajax. Очень часто для получения нужных страниц требуется авторизация, а это обещает различные прелести в виде сессий и coockie. Особняком стоят случаи, когда веб-страница полностью генерируется на стороне клиента, динамически формируясь с помощью JavaScript. Не редкость ситуация, в которой иностранные сайты-доноры игнорируют любые запросы по IP из стран СНГ. В конце концов, приходится работать с веб-сайтами, которые медленно/частично загружаются или вообще работают «через раз».

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

См. также: Парсинг: Что? Зачем? Как?, Что понадобится?, Этапы парсинга, Синтаксический анализ, Экспорт данных