Как получить значения «цена и ключ изображения» из этого DOMobject

Как получить значения цены и изображения из этого ниже.

DOMElement Object ( [tagName] => script [schemaTypeInfo] => [nodeName] => script [nodeValue] => {"@context":"https://schema.org","@type":"ItemList","itemListElement":[{"offers":{"priceCurrency":"Rs. ","@type":"Offer","price":"133998.00","availability":"https://schema.org/InStock"},"image":"https://static-01.daraz.pk/p/267cc89e2ff3e886b6bded905007d0a9.jpg","@type":"Product","name":"Galaxy Note 9 - 6.4\" - 6Gb Ram - 128Gb Rom - Dual Sim - Ocean Blue","url":"https://www.daraz.pk/products/samsung-galaxy-note-9-64-6gb-ram-128gb-rom-dual-sim-ocean-blue-i100262063-s1222963201.html?search=1"},{"offers":{"priceCurrency":"Rs. ","@type":"Offer","price":"111999.00","availability":"https://schema.org/InStock"},"image":"https://static-01.daraz.pk/original/1da238a72d721dd92c6db87176479b47.jpg","@type":"Product","name":"Galaxy S9+ - 6.2\" QHD+ - 6GB RAM - 128GB ROM - 12/12/8MP Camera - Titanium Gray","url":"https://www.daraz.pk/products/galaxy-s9-62-qhd-6gb-ram-128gb-rom-12128mp-camera-titanium-gray-i1487172-s9267151.html?search=1"}

Можете ли вы немного расширить вышеизложенное? Я не уверен, как вы пытаетесь получить значения? У вас есть тег xPath, но вышеприведенное выглядит как JSON

Dan Gardner 14.02.2019 16:21

Я пытаюсь удалить сайт покупок, но он использует javascript для загрузки контента. Итак, изучив исходный код страницы, я нашел тег script, который содержит все данные. Итак, я сделал это "$prices = $xpath->query('//script');" и в переменной цены у меня есть этот json.

Farhan 14.02.2019 17:10

Можете показать нам HTML, который вы анализируете (не всю страницу, а только минимальный воспроизводимый пример)? Трудно понять, что на самом деле означает этот вывод отладки.

IMSoP 15.02.2019 16:23

Я хочу получить цену и изображение товаров с этого сайта [ссылка]daraz.pk/смартфоны/nokia. Но они используют javascript для загрузки контента, а я делаю обычную очистку. Итак, я изучаю исходный код страницы и в конце нахожу тег сценария, который содержит всю информацию о продуктах, поэтому я удаляю тег сценария, например этот $prices = $xpath->запрос('//скрипт');, и теперь у меня есть этот объект Domelement. Как я могу получить значения цены и изображения из этого объекта?

Farhan 16.02.2019 15:58
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
4
50
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам нужно продолжать разбивать свою проблему и решать одну задачу за раз:

  1. Найдите, где на странице находится нужный вам контент. (Сделанный.)
  2. Игнорируя все остальное на странице, найдите способ получить доступ к этой части. (Сделанный.)
  3. Игнорируя остальную часть этого элемента, получите только его строковое содержимое. На данный момент вам больше ничего не нужно от HTML, поэтому DOM не поможет вам дальше этого момента.
  4. Не обращайте внимания на то, как вы ее получили, посмотрите на структуру этой строки и придумайте, как ее разобрать. Подсказка: это похоже на JSON, а PHP имеет встроенные функции для обработки JSON.
  5. После того, как вы проанализировали строку, извлеките из нее нужные фрагменты информации. На этом этапе вам даже не нужно знать, как выглядела строка, у вас будет просто массив PHP или объект.

Другие вопросы по теме