Могу ли я запросить DXY в Google Таблицах?

#google-sheets

#google-sheets

Вопрос:

Я пробовал:

=importxml(«https://www.wsj.com/market-data/quotes/index/DXY «, «//span[@id=’quote_val’]/текст()»)

и еще несколько вещей, но пока безуспешно!

Ответ №1:

Я считаю, что ваша цель заключается в следующем.

  • Вы хотите получить значение //span[@id='quote_val']/text() from https://www.wsj.com/market-data/quotes/index/DXY .

Проблема и обходной путь:

Когда =IMPORTXML("https://www.wsj.com/market-data/quotes/index/DXY","//*") помещается в ячейку, я подтвердил, что возникает Could not fetch url: https://www.wsj.com/market-data/quotes/index/DXY ошибка. Но когда я протестировал URL-адрес с помощью UrlFetchApp из Google Apps Script, я подтвердил, что данные HTML могут быть получены.

В этом ответе в качестве обходного пути я хотел бы предложить достичь вашей цели с помощью пользовательской функции с помощью Google Apps Script.

Пример сценария:

Пожалуйста, скопируйте и вставьте следующий скрипт в редактор сценариев электронной таблицы Google и сохраните его. При использовании этого скрипта, пожалуйста, поместите =SAMPLE("https://www.wsj.com/market-data/quotes/index/DXY") в ячейку. При этом запускается скрипт и извлекается значение.

 function SAMPLE(url) {
  const html = UrlFetchApp.fetch(url).getContentText();
  const res = html.match(/<span id="quote_val">(. ?)</span>/);
  if (!res) throw new Error("Value cannot be retrieved.")
  return isNaN(res[1]) ? res[1] : Number(res[1]);
}
 

Результат:

введите описание изображения здесь

Ссылки: