Если какая-то граница окажется пустой, как вывести альтернативную?

Тема в разделе "Решение различных задач по парсингу", создана пользователем serg11, 30 янв 2012.

  1. serg11

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

    Регистрация:
    30 янв 2012
    Сообщения:
    1
    подскажите возможно ли реализовать такую схему парсинга

    парсим ссылки на видео - http://ссылка на видео.fly
    на странице имеем - основную ссылку 1video-hd.fly
    альтернативная ссылка 2video.fly
    необходимо парсить первую - если первая не нашлась заменять второй альтернативной - приэтом вторую вставлять только в случае не нахождения первой
     
  2. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте, да.
    На панели инструментов "дополнительные настройки границ парсинга".
    Туда в соответствующей владке (у основной границы) вписать в поле "если граница окажется пустой..." макрос альтернативной границы <CD_GRAN_...!>.
     
  3. Atlas

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

    Регистрация:
    10 мар 2018
    Сообщения:
    59
    А можно чуть конкретнее?
    Если есть обязательная граница:
    И она оказывается пустой, то можно вместо неё парсить другую границу?
    Или Вы имели ввиду, что мне альтернативный код в другой границе нужно задать, а его макрос вставить в "если граница пустая..."?
     
  4. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Я конкретно так и сказал сделать. Зачем вы пытаетесь усомниться в этом и не пробуете предложенного однозначного и простого решения - для меня, на полном серьезе, странно!
     
    Atlas нравится это.
  5. Atlas

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

    Регистрация:
    10 мар 2018
    Сообщения:
    59
    Извините, тугой на подъем. Спасибо за решение!
     
  6. Root

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

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

    Обращайтесь
     
  7. nikoshot

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

    Регистрация:
    14 янв 2017
    Сообщения:
    115
    Добрый вечер!
    Можно уточнить..?
    У меня та же проблема, только я использую в первом случае повторяющиеся границы.. (это основные фото)
    и мне нужно если эта повторяющиеся граница пустая то выводит обычную границу с одним главным фото....
    Дело в том что если фото одно то оно отображается в дном коде.. а если у товара несколько фото то код становится другой....
    Как мне быть..нужно задать если повторяющиеся граница пустая то выводим обычную...
    Спасибо!
     
  8. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Код:
    [IF1][CHARCOUNT]<CD_CIRCLE_GRAN1!>[/CHARCOUNT]<1[THEN]<CD_GRAN1!>[ESLE]<CD_CIRCLE_GRAN!>[/IF1]
    Писал по памяти. Наименования макросов проверьте самостоятельно.
     
    AlexandrSorokin, napserious и nikoshot нравится это.
  9. nikoshot

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

    Регистрация:
    14 янв 2017
    Сообщения:
    115
    Спасибо.. то что нужно)
     
  10. Liks

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

    Регистрация:
    6 июн 2019
    Сообщения:
    26
    Город:
    Москва
    Приветствую!
    примерно то-же, но чуть иначе.. подскажите пожалуйста:
    [[[n|начало||m|конец{{{[NAME]Вася[/NAME]}}}]]]
    [[[n|начало||m|конец{{{[NAME]Катя[/NAME]}}}]]]
    [[[n|начало||m|конец{{{[NAME]Витя[/NAME]}}}]]]
    [[[n|начало||m|конец{{{[NAME]Маша[/NAME]}}}]]]
    Как вывести одно из динамической?
    В приоретете Катя - если есть. Если нет, то можно Машу - на край сойдет и Витя...
     
  11. Liks

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

    Регистрация:
    6 июн 2019
    Сообщения:
    26
    Город:
    Москва
    что-то вроде такой жути?:
    [{{
    [IF1]
    [IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Катя[/NAME]}}}]]][/CHARCOUNT]<1[THEN]1[ESLE][/IF1]=1[THEN]
    [IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Катя[/NAME]}}}]]][/CHARCOUNT]<1[THEN]1[ESLE][/IF1]
    [ELSE]
    [IF1][IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Маша[/NAME]}}}]]][/CHARCOUNT]<1[THEN]2[ESLE][/IF1]=2[THEN]
    [IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Маша[/NAME]}}}]]][/CHARCOUNT]<1[THEN]2[ESLE][/IF1]
    [ELSE]
    [IF1][IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Витя[/NAME]}}}]]][/CHARCOUNT]<1[THEN]3[ESLE][/IF1]=3[THEN]
    [IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Витя[/NAME]}}}]]][/CHARCOUNT]<1[THEN]3[ESLE][/IF1]
    [ELSE]
    [IF1][IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Вася[/NAME]}}}]]][/CHARCOUNT]<1[THEN]4[ESLE][/IF1]=4[THEN]
    [IF1][CHARCOUNT][[[n|начало||m|конец{{{[NAME]Вася[/NAME]}}}]]][/CHARCOUNT]<1[THEN]4[ESLE][/IF1]
    [ELSE]
    Иди напейся неудачник!
    [/IF1]
    [/IF1]
    [/IF1]
    [/IF1]
    }}]
    или есть проще? ^_^
     
  12. Liks

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

    Регистрация:
    6 июн 2019
    Сообщения:
    26
    Город:
    Москва
    О! нашёль:
    [CHECKENTRY([ANYTEXT])]текст[THENTEXT]не пустой[ELSETEXT]пустой[/CHECKENTRY]
     
    xLime и Root нравится это.

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