Как импортировать все узлы элементов в Google Sheets из XML - PullRequest
1 голос
/ 18 февраля 2020

Есть ли способ загрузить полную схему XML, включая заголовки, в таблицу Google Sheet?

Я хочу импортировать все элементы, включая заголовки, из сети XML страница в Google Sheets.

Страница XML выглядит следующим образом:

<staff>
    <admin>
        <first-name>Patrice</first-name>
        <family-name>Withers</family-name>
        <year-started>2006</year-started>
        <starting-salary>30,500</starting-salary>
        <current-salary>34,000</current-salary>
    </admin>
    <admin>
        <first-name>Shelly</first-name>
        <family-name>Lancer</family-name>
        <year-started>2015</year-started>
        <starting-salary>32,500</starting-salary>
        <current-salary>33,500</current-salary>
    </admin>
</staff>
<students>
    <full-time>
        <first-name>Henry</first-name>
        <family-name>Nunes</family-name>
        <status>Freshman</status>
        <current-tuition>2,400</current-tuition>
        <last-year-tuition>2,200</last-year-tuition>
    </full-time>
    <part-time>
        <first-name>Leslie</first-name>
        <family-name>Franks</family-name>
        <status>Senior</status>
        <current-tuition>2,300</current-tuition>
        <last-year-tuition>2,100</last-year-tuition>
    </part-time>
</students>

Я пытаюсь, чтобы Google Sheets загрузил полную страницу XML, включая элемент заголовки и отображать его, предпочтительно, как указано выше, в столбцах с отступом или в одном столбце, чтобы он выглядел следующим образом:

<staff>
<admin>
<first-name>Patrice</first-name>
<family-name>Withers</family-name>
<year-started>2006</year-started>
<starting-salary>30,500</starting-salary>
<current-salary>34,000</current-salary>
</admin>
<admin>
<first-name>Shelly</first-name>
<family-name>Lancer</family-name>
<year-started>2015</year-started>
<starting-salary>32,500</starting-salary>
<current-salary>33,500</current-salary>
</admin>
</staff>
<students>
<full-time>
<first-name>Henry</first-name>
<family-name>Nunes</family-name>
<status>Freshman</status>
<current-tuition>2,400</current-tuition>
<last-year-tuition>2,200</last-year-tuition>
</full-time>
<part-time>
<first-name>Leslie</first-name>
<family-name>Franks</family-name>
<status>Senior</status>
<current-tuition>2,300</current-tuition>
<last-year-tuition>2,100</last-year-tuition>
</students>

IMPORTDATA, как другой пользователь посоветовал с подобным вопросом здесь , не удалось, поскольку некоторые данные XML имеют запятые, аналогично приведенному выше примеру вывода.

1 Ответ

1 голос
/ 18 февраля 2020

если ваш URL-адрес может быть удален из-за учетных данных аутентификации, вы можете попробовать:

=ARRAYFORMULA(TRIM(TRANSPOSE(QUERY(TRANSPOSE(
 ARRAY_CONSTRAIN(IMPORTDATA("url_here"), 5000, 20)),,999^99))))

также вы можете попробовать:

=IMPORTXML("url_here", "//*")
...