Нужно спарсить определенную часть текста из описания

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

  1. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    Здраствуйте, подскажите пожалуйста, как из описания такого вида (
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 3 постов.**
    ):
    • изящная кроватка-качалка
    • материал: натуральный бук
    • бортики регулируются по высоте
    • ложе регулируется по высоте: 2 положения
    • безопасное расстояние между ламелями
    • колёсики с резиновым покрытием
    • в комплект входит ящик для белья
    спарсить несколько строк:
    "изящная кроватка-качалка" - и привести к виду - "тип кроватки: качалка" (здесь понятно - поиск-замена)
    "материал: натуральный бук"
    в комплект входит ящик для белья - привести к виду -"ящик: с ящиком"
    Далее хочу ":" заменить "CSVCS" и вести каждую как атрибуты. (т. е. Имя хар-ки CSVCS Значение)
    Присматривался к макросу [EXTRACTATTR], но что-то не получилось разобраться с ним ( брал вместо текста границу парсинга, которая берет описание, указывал [NAME]изящная кроватка-качалка[/NAME] - в опции макроса переименоввывал ее с помощью поиск-замена, окончание границы указывал [END];|,|{br}|[MARK][/END], но в цсв-таблице ничего не выводится.
     
  2. inotoxic

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

    Регистрация:
    13 сен 2015
    Сообщения:
    651
    И если у товара поменяется порядок вывода характеристик - столбец к примеру "материал" заполнится другими атрибутами
     
  3. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    Да, порядок будет меняться...
    Смысл в том, что если в описании товара попадается фраза, к примеру "материал: натуральный бук" нужно ее спарсить в виде материал- имя атрибута, натуральный бук- значение.
     
  4. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    Здраствуйте, скажите пожалуйста, есть решение такой задачи?
     
  5. inotoxic

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

    Регистрация:
    13 сен 2015
    Сообщения:
    651
    Как вариант, парсинг в два прохода:
    1. Собираете все товары = получаете все возможные варианты характеристик и атрибутов. Определяете замены, чтобы отделять характеристику: от атрибутов.
    2. Парсите через [EXTRACTATTR] с заполненными заменами
     
  6. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    2 вариант подходит идеально ([EXTRACTATTR])... Имнно к нему и присматривался. Но не могу настроить этот макрос, поэтому и обращаюсь за помощью.
    Может границу не правильно задаю? - в ней описание ни чистый текст, а с тегами... или это не имеет значения?
    [NAME]изящная кроватка-качалка[/NAME] - указываю
    [END];|,|{br}|[MARK][/END] - указываю
    [/END]<CD_GRAN_7!>[/EXTRACTATTR] - вэтой границе находится текст описания.
    Но в предпросмотре ничего не выводится.
    Подскажите, что не так указываю в макросе?
     
  7. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    13.568
    Город:
    Барнаул
    А что там за текст находится я не могу угадать. Конкретно поставьте задачу (вот есть текст, нужно его привести к вот такому виду).
     
    Последнее редактирование: 28 апр 2018
  8. inotoxic

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

    Регистрация:
    13 сен 2015
    Сообщения:
    651
    Это не второй вариант, а второй этап - двухэтапного парсинга сайта
     
  9. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    Здраствуйте, Сергей.
    В границе находится текст:
    <font class=""product_blue""> Особенности:</font>
    <br />
    - предназначено для малышей с рождения;
    <br />
    - максимально допустимый вес 11 кг;
    <br />
    - уникальный вид качания – кресло раскачивается, как деревянная лошадка, максимально увеличивая ощущение движения у ребёнка;
    <br />
    - 5 различных скоростей качания – Вы можете выбрать подходящий режим не только для убаюкивания малыша, но и для его развлечения;
    <br />
    - возможность подключения MP3-плеера или iPhone (MP3-провод входит в комплект);
    <br />
    - поворотная дуга с игрушками помогает в развитии зрительных рефлексов и мелкой моторики и дарит малышу улыбку;
    <br />
    - тканевый чехол съёмный, его можно стирать в машине в деликатном режиме;
    <br />
    - кресло-качалка работает от сети.
    <br />
    <br /></section>
    Выше указывал:
    • изящная кроватка-качалка
    • материал: натуральный бук
    • бортики регулируются по высоте
    • ложе регулируется по высоте: 2 положения
    • безопасное расстояние между ламелями
    • колёсики с резиновым покрытием
    • в комплект входит ящик для белья
    Из этого нужно взять:
    "изящная кроватка-качалка"
    "материал: натуральный бук"
    "в комплект входит ящик для белья"
     
  10. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    В границе <CD_GRAN_7!> текст:
    <section><br /> <font class=""product_blue"">Основные характеристики:</font>
    <br />
    - изящная кроватка-качалка;
    <br />
    - материал: натуральный бук;
    <br />
    - бортики регулируются по высоте;
    <br />
    - ложе регулируется по высоте: 2 положения;
    <br />
    - безопасное расстояние между ламелями;
    <br />
    - колёсики с резиновым покрытием;
    <br />
    - мягкие нетоксичные накладки на бортики;
    <br />
    - нетоксичные лаки и краски;
    <br />
    - в комплект входит ящик для белья.
    <br />
    Когда указываю эту границу в макросе [/END]<CD_GRAN_7!>[/EXTRACTATTR], то в предпросмотре видно только -
    section><br /> <font class="product_blue">Основные характеристики:</font>, поэтому не могу вытащить характеристику...
    Почему не видно остального текста?
     
  11. ap2205

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

    Регистрация:
    30 мар 2018
    Сообщения:
    83
    Город:
    Москва
    Всем спасибо... Разобрался
     
    Root нравится это.

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