Объединение при помощи APPLYTABLESPANS

Тема в разделе "Парсинг HTML-таблиц", создана пользователем masrub, 15 окт 2021.

Метки:
  1. masrub

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

    Регистрация:
    29 июн 2018
    Сообщения:
    194
    Здравствуйте, как размножить объединенные ячейки в столбце? Что то все перепробовал, не получается, что то делаю не так.
    Нужно что бы в шапке
    Было.JPG
    После вывода в csv объединились столбцы "Давление, бар 1 ступень" "Давление, бар 2 ступень" и т.д.
     

    Вложения:

  2. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Приложите полный код таблицы, а не только заголовка.
     
  3. masrub

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

    Регистрация:
    29 июн 2018
    Сообщения:
    194
    Сделано, заменил файл на хостинге. Но почему вопрос именно по шапке таблицы, т.к. таблицы бывают проскакивают обычные, и в таком случае склеиваются первые 2 столбца.
    Ссылки недоступны для гостей

    Идеально даже бы получить вывод вот такого типа
    Артикул:JHP-0,4B|Номинальный объём бака, см3:0,35|Полезный объём бака, см3:0,25|Давление, бар 1 ступень:20|Давление, бар 2 ступень:700|И т.д
    Артикул:JHP-0,7B|Номинальный объём бака, см3: 0,85|И т.д
     
    Последнее редактирование: 15 окт 2021
  4. masrub

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

    Регистрация:
    29 июн 2018
    Сообщения:
    194
    Не могу понять почему на 12 действии лога правильные данные в CSV есть, но выводиться совершенно не то что нужно.
    Снимок1.JPG
     

    Вложения:

  5. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте еще раз.

    В вашем проекте у товаров есть несколько одинаковых имен характеристик (например, "Давление, бар"). И в настройках макроса [DYNAMICVALUES] (shift+ctrl+d) стоит разделитель дозаписываемых данных, как [CSVCS] (оператор разделителя ячеек CSV). Вследствие этого в столбец с именем "Давление, бар" сначала записывается "1 ступень", затем "2 ступень" с разделителем [CSVCS]. Отсюда и наблюдается такой эффект.

    Можете использовать там другой разделитель, например, символ запятой. Тогда данные будут дозаписываться в одну ячейку через запятую.

    2021-10-18_20-02-37.png
     
  6. masrub

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

    Регистрация:
    29 июн 2018
    Сообщения:
    194
    Сергей, а как получить из этой шапки вот такую шапку?
    Снимок2.JPG
    2й день пытаюсь получить шапку таблицы в таком выводе.
    Именно для этого я размножил повторяющиеся (объединенные) столбцы в шапке таблицы ("Давление, бар" и "Производительность, л / дв. ход")
    И еще вопрос, в логе 13 действие "выполнение макроса шаблона вывода [HORIZTABLE]
    получается результат:
    Код:
    [DYNAMICVALUES]Артикул[VALUE]:Артикул[NEXTPAIR]Номинальный объём бака, см3[VALUE]:Номинальный объём бака, см3[NEXTPAIR]Полезный объём бака, см3[VALUE]:Полезный объём бака, см3[NEXTPAIR]Давление, бар[VALUE]:1 ступень[NEXTPAIR]Давление, бар[VALUE]:2 ступень[NEXTPAIR]Производительность, л / дв. ход[VALUE]:1 ступень[NEXTPAIR]Производительность, л / дв. ход[VALUE]:2 ступень[NEXTPAIR]Габариты (LxBxH),  мм[VALUE]:Габариты (LxBxH),  мм[NEXTPAIR]Масса, кг[VALUE]:Масса, кг[NEXTPAIR][/DYNAMICVALUES]
    Можно этот текст как то вывести в этом виде как мы его видим?
     
  7. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Завтра к вечеру постараюсь придумать.

    От вас просил код полной таблицы, пока вижу только шапку. Нужен код полной таблицы. Можно даже в сообщении приложить.
     
  8. masrub

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

    Регистрация:
    29 июн 2018
    Сообщения:
    194
    Сергей по первой ссылке вся таблица полностью в applytablespans_2-cdp
     
  9. masrub

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

    Регистрация:
    29 июн 2018
    Сообщения:
    194
    Сергей вот мой вариант решения задачи, но это только пол дела.
    На мой взгляд в макросе [APPLYTABLESPANS] не хватает при слиянии двух строк шапки при объединении проверки на повторение одного и того же текста в ячейках. Получается "артикул артикул"
    При добавлении [HORIZTABLE] дальнейшая обработки таблицы невозможна, т.к. порядок выполнения макросов меняется. Можно конечно сохранить локально и обработать дальше.
    Больше можно было бы решить в поиск замене, если была возможность работать с массивами.
     

    Вложения:

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