Структурировать вывод в JSON

Тема в разделе "Решение различных задач по парсингу", создана пользователем webstep, 26 май 2022.

  1. webstep

    webstep Member Пользователи

    Регистрация:
    6 дек 2020
    Сообщения:
    129
    Город:
    Kiev
    Всем привет!

    Попался мне сайт один, который нужно спарсить в JSON.
    Всё бы ничего, но по структуре всё должно быть разложено по категориях/подкатегориях.
    Есть перечень ссылок:
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей

    Данные нужно паковать примерно в такой формат:
    {
    "categories": [
    {
    "name": "Молочные продукты",
    "image": "Ссылки недоступны для гостей",
    "products": [
    {
    "name": "Молоко",
    "image": "Ссылки недоступны для гостей",
    "subproducts": [
    {
    "name": "Молоко стерилизованное, 2,5% жирности",
    "calories": {
    "calories": 54,
    "protein": 2.9,
    "carbs": 4.8,
    "fat": 2.5
    },
    "microelements": [
    {
    "name": "Моно- и дисахариды",
    "value": {
    "amount": 4.8,
    "measure": "г"
    }
    }
    ],
    "vitamins": [
    {
    "name": "Витамин B1 (тиамин)",
    "value": {
    "amount": 0.02,
    "measure": "мг"
    }
    }
    ]
    }
    ]
    }
    ]
    }
    ]
    }

    Проблема в том, что CD пишет данные в JSON последовательно , и я не могу дописывать в блоки JSON которые ранее записал те строки которые мне попадаються в новых страницах. Надеюсь понятно описал.
    Знает ли кто как это реализовать ?
     
  2. inotoxic

    inotoxic Well-Known Member Пользователи

    Регистрация:
    13 сен 2015
    Сообщения:
    874
    Да
     
  3. iam9ripe

    iam9ripe New Member Пользователи

    Регистрация:
    12 май 2022
    Сообщения:
    21
    Город:
    Москва
    Приветствую, думаю, что в поиске и замене. Сначала качаем ссылки, в каждой выкусываем нужный блок, все остальное выкидывем, клеем все блоки воедино и получаем большой HTML/XML/DATA FILE - который парсим повторяющимися границами и вуаля.
    В общем смысл простой, качаем, вырезаем, опять качаем, опять вырезаем, клеим, и так повтор пока ссылки не закончились :) Я так докторов победил с подгружаемыми отзывами по 1000-2000 шт.
     
  4. webstep

    webstep Member Пользователи

    Регистрация:
    6 дек 2020
    Сообщения:
    129
    Город:
    Kiev
    не хило. Спасибо.
    Я уже решил данный вопрос, но прибегнул к сторонней помощи.
    Знакомый на РНР написал скрипт, который правильно расставил всё по категориях ( я спарсил большим полотном где категории каждый раз повторялись)
     

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