Загрузить в cms html код и спарсить картинки из тегов

Тема в разделе "Решение различных задач по парсингу", создана пользователем vladimir4000, 17 фев 2021.

  1. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Добрый день, может кто подскажет решение. Нужно загрузить в cms html код в таком виде, не удаляя html теги, так же скачать изображение. Изображений может быть несколько и находиться в разных местах кода. Может у кого есть идеи как это можно сделать?
    <div class="tabs-description"> <a data-fancybox="group" href="/images/Hyperline/patch/sx_pc-lpm-utp.jpg"><span>Тут какой то текст.</span></div>
     
  2. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.429
    Адрес:
    Latvia
    Что не получается в вашем случае?
    В шаблоне вывода выводите не обработанный код, а нужные корректировки можно внести поиск-заменой макросами REPLACE.
    DOWNLOADFILE макрос имеет опции и там мжно указать чтоб автоматически встраивался в атрибут href тега a
     
  3. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    C REPLACE думаю разберусь,
    "DOWNLOADFILE макрос имеет опции и там мжно указать чтоб автоматически встраивался в атрибут href тега a" не могу найти настройки данного макроса. И где можно почитать как сделать что бы данный макрос автоматом встраивался в атрибут href ?
     
    Root нравится это.
  4. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.429
    Адрес:
    Latvia
    Shift+Ctrl+L
     
    vladimir4000 и Root нравится это.
  5. Root

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

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

    2021-02-17_18-12-06.png
     
    vladimir4000 нравится это.
  6. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Тег DOWNLOADFILE отлично работает, автоматом вставляется и скачивает изображения. Но хотелось бы добавить спец.строку к результату парсинга.
    Из строки <p><strong>Чертеж:</strong><br /><a data-fancybox="group" href="/images/Hyperline/patch/sx_pc-lpm-utp.jpg"><img src="/images/Hyperline/patch/sx_pc-lpm-utp_m.jpg"></a></p>
    получаю <p><strong>Чертеж:</strong><br /><a data-fancybox="group" href="sx_pc-lpm-utp_3.jpg"><img src="sx_pc-lpm-utp_m_4.jpg"></a></p>
    Но мне нужно, что бы к результату парсинга добавлялось правило
    <a data-fancybox="group" href="|<a data-fancybox="group" href="BASE_PATHuserfls/editor/textimages/
    Но оно не срабатывает видимо из за того, что была обработка тегом DOWNLOADFILE , может есть какая то возможность постобработки?
     
  7. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Макрос шаблона вывода [REPLACE] работает после макроса <DOWNLOADFILE>. Используйте его для выполнения изменений кода после скачивания фото.
     
    vladimir4000 нравится это.
  8. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Отлично, то что надо. Спасибо.
     
  9. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Хотя нет, добавил два правила для [REPLACE] для строчки <p><strong>Чертеж:</strong><br /><a data-fancybox="group" href="sx_pc-lpm-utp_3.jpg"><img src="sx_pc-lpm-utp_m_4.jpg"></a></p>
    <a data-fancybox="group" href="|<a data-fancybox="group" href="BASE_PATHuserfls/editor/textimages/
    и
    jpg"><img src="|jpg"><img src="BASE_PATHuserfls/editor/textimages/
    В окне Правил\замены получаю правильны результат <p><strong>Чертеж:</strong><br /><a data-fancybox="group" href="BASE_PATHuserfls/editor/textimages/sx_pc-lpm-utp_3.jpg"><img src="BASE_PATHuserfls/editor/textimages/sx_pc-lpm-utp_m_4.jpg" ></a></p>
    а в Окне предосмотра получаю пустой href тега <a>
    <a data-fancybox="group" href=""><img src="BASE_PATHuserfls/editor/textimages/sx_pc-lpm-utp_9.jpg"><img src="sx_pc-lpm-utp_m_10.jpg" alt="Изображение"></a>
     
  10. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Разобрался, странно, почему то эти два правила Поиска и Замены между собой конфликтовали.
     
  11. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Здравствуйте, странно, но почему то перестал правильно срабатывать макрос DOWNLOADFILE, а точнее: в настройках макроса установил Вставлять макрос в атрибут src каждого HTML тега IMG. Для тега А срабатывает, а тег img игнорирует. Подскажите пожалуйста, может я, что то делаю не так?
     

    Вложения:

  12. Root

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

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

    Теги IMG на этом сайте некорректные.

    Код:
    <img style="margin-right: 50px;" src="/images/Cabeus/7000c-02_m.jpg" alt="Патч-панель 19 (1U), 24 портов RJ-45, категория 5e, Dual IDC, с задним кабельным организатором.<br />Вид спереди." />
    Можно вырезать альты в настройках границы парсинга и тогда будет ok.

    Код:
     alt="{skip}"|
     
    vladimir4000 нравится это.
  13. vladimir4000

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

    Регистрация:
    25 авг 2017
    Сообщения:
    119
    Видимо alt некорректный из за наличия в нем тега br. Спасибо, большое, все работает.
     

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