Прошу помощи с xml-кой

Автоматизация при помощи встроенного скриптового языка и RouterOS API
Ответить
Nick209
Сообщения: 2
Зарегистрирован: 27 апр 2019, 10:45

Прошу помощи с xml-кой

Сообщение Nick209 » 27 апр 2019, 10:47

Добрый день. Прошу помощи в написании скрипта.
Мой микротик скачивает xmlку по ссылке
http://new.earthtools.org/sun/40.71417/ ... /4/12/-5/0
и в переменную sunsetTime помещает текст из тега <civil>, однако в этой xmlке этот тег присутствует 2 раза, и мне как раз нужен текст именно из второго тега.
У каждого <civil>, помимо корневого родителя есть еще по два родителя.
Пожалуйста, подскажите как лучше поступить)))

Код: Выделить всё

:local lineBegin 0;
:local lineEnd 0;
:local sunsetTime "";
:set lineBegin ( [:find $filedata "<civil>" 0 ] + 8 ) ;
:set lineEnd [:find $filedata "</civil>" 0 ] ;
:set sunsetTime [:pick $filedata $lineBegin $lineEnd] ;

Аватара пользователя
Chupaka
Сообщения: 1810
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск
Контактная информация:

Re: Прошу помощи с xml-кой

Сообщение Chupaka » 27 апр 2019, 11:57

Добрый. Если в лоб брать второй тег — то просто заменить

Код: Выделить всё

:find $filedata "<civil>" 0
на

Код: Выделить всё

:find $filedata "<civil>" ([:find $filedata "<civil>" 0] + 1)
И для второго тега аналогично.

(Пишу с телефона, мог опечататься где-нибудь)

Nick209
Сообщения: 2
Зарегистрирован: 27 апр 2019, 10:45

Re: Прошу помощи с xml-кой

Сообщение Nick209 » 28 апр 2019, 01:48

Да, именно "в лоб"! Не очень понимаю как тут работают аргументы, но все отлично работает))) Спасибо!!!

Ответить