@ReWire_92

Не могу разобраться с функцией ФИЛЬТР.XML в Excel, значение из ВЕБСЛУЖБА получаю с параметрами, а выбрать потом второй из них не могу. Что не так?

Хочу в Экселе в ячейку через API Binance.com получить данные о текущей цене BTC:
=ВЕБСЛУЖБА("https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT")


Данные с двумя параметрами получаю:
62f7dd3b781b6365620036.png

Далее через =ФИЛЬТР.XML пытаюсь получить второй параметр с ценой из данной ячейки:
=ФИЛЬТР.XML(A1;"//price")
и нифига не работает:
62f7de2f384e6203156484.png

Пробовал ложить всё в одном запросе:
=ФИЛЬТР.XML(ВЕБСЛУЖБА("https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT");"//price")

Пробовал менять второй агрумент функции, после гуглёжки в интернете, почему-то где-то с косыми пишут агрумент, где-то с собачкой, где-то с косыми и собачкой:
=ФИЛЬТР.XML(ВЕБСЛУЖБА("https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT");"//price")
=ФИЛЬТР.XML(ВЕБСЛУЖБА("https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT");"@price")
=ФИЛЬТР.XML(ВЕБСЛУЖБА("https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT");"//@price")


По итогу ни один вариант не работает. Что я делаю не так, в чём ошибка?
  • Вопрос задан
  • 774 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Roman-Fov
Запрос возвращает не xml, a json. А разобрать пытаемся xml.
Пробуем делать это регулярками:
=РЕГВ( ВЕБСЛУЖБА("https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDT"); "\d+.\d+")


Названия функций могут меняться в зависимости от локализации.
На libreoffice calc 7.0.4 заводится.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы