Как парсить сайт, если границы не постоянны?

Тема в разделе "Парсинг конкретных сайтов по запросу (ПЛАТНО)", создана пользователем Руслан, 26 апр 2012.

  1. Руслан

    Руслан New Member Пользователи

    Регистрация:
    26 апр 2012
    Сообщения:
    2
    Здравствуйте, прошу помощи бывалых. Хотел узнать, есть ли возможность парсинга страниц сайта, если границы встречаться в документе хаотично.

    Предположим есть документ со следующей структурой:
    Код:
    <h1>Заголовок</h1>
    <img src="images" />
    <p>Текст</p>
    <div class="b-gallery-preview">
    <img src="images" />
    <img src="images" />
    <img src="images" />
    <img src="images" />
    </div>
    <a href="">Ссылка на страницу с кучей картинок из галереи</a>
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    Но дело в том, что галерея встречается не во всех документах, или встречается в документах 2 и более раз, т.е. иногда структура документа не содержит элемент <div class="b-gallery-preview"></div> , а иногда содержит его более одного раза.

    И документ выглядит так:
    Код:
    <h1>Заголовок</h1>
    <img src="images" />
    <p>Текст</p>
    <div class="b-gallery-preview">
    <img src="images" />
    <img src="images" />
    <img src="images" />
    <img src="images" />
    </div>
    <a href="">Ссылка на страницу с кучей картинок из галереи</a>
    <p>Текст</p>
    <div class="b-gallery-preview">
    <img src="images" />
    <img src="images" />
    <img src="images" />
    <img src="images" />
    </div>
    <a href="">Ссылка на страницу с кучей картинок из галереи</a>
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    Или так:
    Код:
    <h1>Заголовок</h1>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    <img src="images" />
    <p>Текст</p>
    Или вообще без изображений, только первое и все:
    Код:
    <h1>Заголовок</h1>
    <img src="images" />
    <p>Текст</p>
    <p>Текст</p>
    <p>Текст</p>
    <p>Текст</p>
    <p>Текст</p>
    Объясните пожалуйста, как в таком случае требуется выстраивать модель парсинга таких документов, что бы учесть все нюансы отсутствующих и присутствующих элементов. Уже сломал мозг, не могу правильно настроить циклы. Пожалуйста дайте мозгу правильное направление движения. Заранее спасибо всем откликнувшимся и проявившим чуточку терпения к моим проблемам. И хотел бы еще узнать, есть ли возможность задавать что то вроде условия: если в какой то например границе парсинга встречается определенная граница например как в моем случае <div class="b-gallery-preview">, то парсинг нужно осуществить по другому, или скажем просто вырезать эту границу парсинга из основной границы. Очень прошу не отсылать на видео хэлпы. Я их посмотрел, я просто не могу связать воедино все эти моменты. Прошу дать направление движения. Спасибо. О и еще, есть ли возможность задавать определенные границы парсинга внутри какой либо уже созданной границы? Своего рода вложенные границы парсинга... Когда программа парсит страницу по определенным границам сайта, а потом попадая на определенный участок, понимает что этот участок нужно парсить, по другому, а затем распарсив вложенную границу возвращается к своему основному циклу парсинга...
     
    Последнее редактирование: 26 апр 2012
  2. Руслан

    Руслан New Member Пользователи

    Регистрация:
    26 апр 2012
    Сообщения:
    2
    Все допер... Для вложений, следует использовать дополнительные настройки. CD действительно достаточно гибкий инструмент, но если его не колупать ничего не получиться. Автору респект и уважуха за мануалы. Если серьезно вникнуть в ситуацию и про шерстить этот форум то многие вопросы становятся решаемыми. Нужно просто вникать и пробовать настраивать различные варианты компоновок границ, макросов, и самое главное, нужно думать головой. А она у меня сегодня закипала :)
     
    Последнее редактирование: 26 апр 2012

Поделиться этой страницей