XPath Query - возвращает атрибут с тем же элементом, который использовался для фильтрации. - PullRequest
1 голос
/ 21 марта 2019

Первый пост здесь, хотя я и раньше получал много полезной информации с этого сайта.

Я пытаюсь использовать листы Google для объединения запросов API и возврата определенных данных.

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

<schedules>
  <schedule stationId="12345" date="2018-11-15">
    <event progId="PR123456789" time="9:00">
        <quals>live</quals>
    </event>
  </schedule>
</schedules>

Я хочу отфильтровать до определенного времени, а затем вернуть progId.

Я пробовал, казалось бы, каждую комбинацию запроса XPath, и на данный момент я думаю, что это невозможно без некоторого волшебства google appscript, но я счастлив, что оказался неправ.

//event/[@time="9:00"]/@TMSId
//event[@time="9:00" and @TMSId]
//event[@time="9:00"]/@TMSId
//event[@time=9:00]/@TMSId
//event[@time=9:00]@TMSId

Я чувствую, что должно быть что-то простое, что мне не хватает.

//event/@progId

Приведенный выше код успешно возвращает все идентификаторы программ. Однако мне нужно отфильтровать вывод по определенному времени.

Ответы [ 2 ]

0 голосов
/ 21 марта 2019

Попробуйте это выражение:

//event[@time='9:00']/@progId

Это должно дать вам желаемое значение.

0 голосов
/ 21 марта 2019

Что дает

//event[@time=9:00]/@progId

?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...