Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
2 / 2 / 0
Регистрация: 13.08.2021
Сообщений: 5

xpath не работает на детальную страницу WordPress

13.08.2021, 17:06. Показов 972. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, не могу понять в чем дело, и как это исправить.
При парсинге страницы каталога https://www.braersnab.ru/catalog/kirpich/ все ок код:
PHP
1
2
3
4
5
6
7
8
9
$link_p = "https://www.braersnab.ru/catalog/kirpich";
$dom = new DOMDocument;
$dom -> loadHTMLFile($link_p);
$xpath = new DomXPath( $dom );
 
$res = $xpath->query('.//*');
foreach($res as $obj) {
  echo $obj->getNodePath() . "\n\r";
}
Но если я беру любую детальную страницу товара

PHP
1
2
3
4
5
6
7
8
9
10
<? 
$link_p = "https://www.braersnab.ru/catalog/kirpich/oblitsovochnyj-kirpich-braer-braer-kladka-limited-terra-1-nf";
$dom = new DOMDocument;
$dom -> loadHTMLFile($link_p);
$xpath = new DomXPath( $dom );
 
$res = $xpath->query('.//*');
foreach($res as $obj) {
  echo $obj->getNodePath() . "\n\r";
}
То $xpath пустой. С чем это может быть связано?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.08.2021, 17:06
Ответы с готовыми решениями:

Почему xpath в xpather работает как надо, а html.xpath обрезает последний элемент
Тут все ок. http://xpather.com/QdzC7iC7 Добавляю выражение для скрипта, но там обрезается артикул: import requests_html from...

Отпарсить html страницу (HtmlAgilityPack, xPath)
Всем привет. Может кто-нибудь подскажет, как с помощью HtmlAgilityPack и xPath отпарсить эту страницу? ...

Поставить на главную страницу им на wordpress страницу опрос, который в итоге рекомендует подходящий по ответам товар
Здравствуйте! Нужен вот такой простенький &quot;опросник&quot; на сайт как на главной странице https://ergobaby.com/ ответить на 2 вопроса...

3
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
13.08.2021, 17:58
Цитата Сообщение от Owlex Посмотреть сообщение
С чем это может быть связано?
С ответом "500 Internal Server Error" при запросе на тот адрес без передачи заголовка "User-Agent".
Вот так работает:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
 
$link_p = "https://www.braersnab.ru/catalog/kirpich/oblitsovochnyj-kirpich-braer-braer-kladka-limited-terra-1-nf";
 
$context = stream_context_create([
    'http' => [
        'header' => [
            'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36'
        ]
    ]
]);
 
libxml_set_streams_context($context);
 
$dom = new DOMDocument;
$dom->loadHTMLFile($link_p);
 
$xpath = new DomXPath($dom);
 
$res = $xpath->query('.//*');
foreach($res as $obj) {
    echo $obj->getNodePath() . "\n\r";
}
1
2 / 2 / 0
Регистрация: 13.08.2021
Сообщений: 5
25.08.2021, 17:13  [ТС]
Очень помогли, спасибо. А может быть вы или кто то еще сможет помочь
https://td-perel.ru/catalog/kl... -i-kamnya/
Есть сайт, на нем изображения идут с lazy load. Как это обойти?
Или например с детальной страницы, там owl карусель, xpath не видит этой ветви вообще.
https://td-perel.ru/catalog/te... -smes/352/
Спасибо.
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
25.08.2021, 18:38
Цитата Сообщение от Owlex Посмотреть сообщение
там owl карусель, xpath не видит этой ветви вообще
Не знаю, если прямой XPath указать, находит:
Code
1
.//*[@id="i-17-bitrix-catalog-products-viewed-tile-1-0w9xn1PXIel0"]/div/div/div/div/div[2]
Цитата Сообщение от Owlex Посмотреть сообщение
изображения идут с lazy load. Как это обойти?
В атрибутах data-original изображений указаны пути к картинкам, которые будут загружены.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.08.2021, 18:38
Помогаю со студенческими работами здесь

Не работает xpath
Дорогие программисты, объясните пожалуйста, почему после выборки по xpath нифига не добавляется в список? Я что то не так понимаю)) ...

Не работает HtmlAgilityPack по Xpath
В общем есть сайт к примеру http://antikey.moy.su/news/rozy_sokolov_n_i_1991/2014-01-19-6158 в хроме достал Xpath к телу новости...

Не работает XPath при анализе XML
Пишу программу, которая должна заменять в docx-документе выбранное слово другим. Разобрался с тем, что docx -формат - это архив xml, нашел...

Javascript в страницу Wordpress
Добрый день, уважаемые программисты! Проблема у меня такая: вставляю javascript в станицу сайта wordpress, но скрипт почему-то не...

Не переходит на страницу меток в WordPress
Есть сайт https://alteman.kz - но на нем не работает переход по меткам. Метки создаются, но не переходит по этим меткам


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru