Как парсить через DOM половину страницы?

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 496
Благодарностей
1 304
Баллы
113
Всем доброго времени суток. Мне нужно спарсить половину html кода со страницы, как я могу это сделать? Я использую Конструктор Рег. выражений - Вставляю - Перед искомым текстом всегда есть: <polovina_sajta> и в поле Это идет после искомого текста: <konec_sajta>

Пример сайта:

<---Весь сайт--->

-vasya
-petya


<---Половина сайта--->
<polovina_sajta>

-vasya
-petya


<konec_sajta>
<---Весь сайт--->


И тут начинается проблема - тест показывает, что найдено несколько значений и код спарсился не полностью как мне надо + даже бы если это проканало, как потом с блокнота с помощью Регулярки (куда я спарсил половину сайта), спарсить мои значения, которые я в результате хочу найти со второй половины сайта(vasya, petya)?

Как я понял, Конструктор рег. выражений не предназначен для таких задач, поэтому, можете ли вы мне подсказать, как выполнить поставленную задачу?

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

И по поводу html кода(блокнот прикреплен снизу) , если пролистнуть вниз, то что нужно искать я отделил его <!---------->Правое окно<!-------->
Искать нужно через рег выражение:
Код:
(?<=<!----><!----><dm-currency-icon\ _ngcontent-dmarket-c22=""\ class="ng-star-inserted"><span\ class="o-currencies--USD"></span></dm-currency-icon>).*?(?=</span></strong><!----><!----><!---->)
Html блокнот:
Цена, с которой не должен начаться поиск - 0.12
Цена, с которой должен начаться поиск - это 539.60
 

Вложения

  • 635,7 КБ Просмотры: 4
Последнее редактирование:

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 911
Благодарностей
1 122
Баллы
113
Смотрите выше по коду, как-то они же получаются слева или справа и составляйте правильный xpath
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 496
Благодарностей
1 304
Баллы
113
Я не знаком с xpath, можете, пожалуйста, более детально объяснить как мне будет лучше сделать? html страницы прикрепил выше и в спойлере детальную информацию указал.

Смотрите выше по коду, как-то они же получаются слева или справа и составляйте правильный xpath
 

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 911
Благодарностей
1 122
Баллы
113
скриншот пришлите что нужно брать
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 496
Благодарностей
1 304
Баллы
113

Вложения

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 496
Благодарностей
1 304
Баллы
113
Хоть совет дайте, в каком направлении двигаться, пожалуйста!
 

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 225
Баллы
113
Хоть совет дайте, в каком направлении двигаться, пожалуйста!

Сначала берете весь кусок в переменную такой вот регуляркой:
Код:
<market-inventory\ class="c-exchange__inventory">[\w\W]*?</market-inventory>
Ну, а потом можно, например, получить все изображения (в список):
1585023552688.png

Или все цены:
1585023599850.png

И вообще можно работать с каждой карточкой товара.

Удачи.
 
Последнее редактирование:
  • Спасибо
Реакции: Gunjubasik

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)