Парсинг таблиц с помощью DYNAMICVALUES

Тема в разделе "Парсинг HTML-таблиц", создана пользователем Ruslan_si, 6 фев 2018.

Метки:
  1. Ruslan_si

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

    Регистрация:
    5 фев 2018
    Сообщения:
    9
    Город:
    Москва
    Здравствуйте! Подскажите пожалуйста как выйти из ситуации когда нужно спарсить с помощью DYNAMICVALUES и [HORIZTABLE].
    Совместно использовать нельзя, использовать только DYNAMICVALUES так и не удалось.
    Ссылка: Ссылки недоступны для гостей
    В итоге нужно получить табличку вида (во вложении)

    Вопрос в том как можно с помощью DYNAMICVALUES
    спарсить список и таблицу

    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     

    Вложения:

    • test.csv
      Размер файла:
      3,7 КБ
      Просмотров:
      6
    Последнее редактирование: 6 фев 2018
  2. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Приветствую
    Как вариант, это перестроить таблицу с верхними характеристиками под таблицу с нижними, через [LOADHTMLTABLE] с последующим парсингом в [HORIZTABLE]. Но это только предположение и на реализацию нужно время, которого бесплатно нет(.
     
  3. Ruslan_si

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

    Регистрация:
    5 фев 2018
    Сообщения:
    9
    Город:
    Москва
    Пробуем так:
    [LOADHTMLTABLE(1)][CREPLACE]<{skip}>|[/CREPLACE][REPLACE(<dl>|<tbody>{break}</dl>|</table>{break}</dt> <dd>|</td><td>{break}<dt>|<td>{break}</dt>|</td>)]<CD_GRAN_3!>[/REPLACE][/LOADHTMLTABLE]
    но при выводе не выводит ни строки ни столбцы
    Вывести все содержимое тоже не удалось [REBUILD(1)][JUNCTION][/REBUILD]

    Хотели изменить ориентацию таблицы, как посоветовал Kreol.
     
  4. Root

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

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

    К вечеру постараюсь сделать решение.
     
  5. Ruslan_si

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

    Регистрация:
    5 фев 2018
    Сообщения:
    9
    Город:
    Москва
    Спасибо большое!
     
  6. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Замените файл Content Downloader.exe (в папке с программой) этим файлом:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     

    Вложения:

    • agro-don_ru.cdp
      Размер файла:
      35,8 КБ
      Просмотров:
      2
    xLime и Ruslan_si нравится это.
  7. Ruslan_si

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

    Регистрация:
    5 фев 2018
    Сообщения:
    9
    Город:
    Москва
    Обновлили, все отлично заработало. Единственное есть один вопрос, что за символы и для чего они. На скриншоте обвели желтым Снимок.PNG
     
  8. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Символ комментирования строк (tab)

    В данном случае убирается перенос строки.
     
  9. Ruslan_si

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

    Регистрация:
    5 фев 2018
    Сообщения:
    9
    Город:
    Москва
    Спасибо большое за такую поддержку! За обновление программы и комментарии к вопросу!
     
    Root нравится это.
  10. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Выявил 1 нюанс. Все хорошо, когда названия характеристик (столбцов) двух таблиц не совпадают. Если они совпадают, начинаются проблемы со смещением столбцов. Макросы парсинга характеристик не предназначены для многократного использования их в одной строке! Я только сейчас понял, что при используемых алгоритмах это никак не сделать, никак.

    Буду отменять макрос [DVCORRECTION(0)].

    Вот решение: Парсить данные с помощью двух отдельных проектов и затем объединять характеристики товаров в готовых CSV-файлах с помощью инструмент "Редактор CSV файлов".
     
  11. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    А нельзя просто удалять дубли характеристик?
     
  12. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    2018-02-14_04-49-32.png
     

    Вложения:

  13. wiDagon

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

    Регистрация:
    20 янв 2018
    Сообщения:
    9
    Город:
    НН
  14. Root

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

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

    Для вашей задачи нужен новый функционал.
     
  15. wiDagon

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

    Регистрация:
    20 янв 2018
    Сообщения:
    9
    Город:
    НН
    Еще новее? Или с этим могу справится? В любом случае спасибо за вашу работу.
     
  16. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Новее, пока не реализовал. Слишком вычурная таблица там.
     
  17. wiDagon

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

    Регистрация:
    20 янв 2018
    Сообщения:
    9
    Город:
    НН
    Понятно. Будем подождать...
     
  18. Root

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

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

    2018-02-16_07-30-27.png
     

    Вложения:

    • tdme_ru_1.cdp
      Размер файла:
      35,6 КБ
      Просмотров:
      6
    wiDagon и xLime нравится это.
  19. wiDagon

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

    Регистрация:
    20 янв 2018
    Сообщения:
    9
    Город:
    НН
  20. wiDagon

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

    Регистрация:
    20 янв 2018
    Сообщения:
    9
    Город:
    НН
    Это решение работает для таких сложных таблиц, но соответственно перестало работать для простых. Дело в том что у меня в парсинге, к сожаление, они попадаются все подряд. И сложные заголовки и простые заголовки, но горизонтальное! объединение ячеек. Хотя мне бы сначала и в этом бы выражении разобраться. Ушел читать доки. А возможно использовать IF условие, например?
     

    Вложения:

    Последнее редактирование: 16 фев 2018

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