Python запрос - указание, что получить в ответе xml - PullRequest
0 голосов
/ 23 апреля 2019

Я создал запрос в своем коде Python, который дает мне ответ, как показано ниже:

<tasks>
    <task>
        <description>description</description>
        <name>test task 1</name>
        <sysID>410d6c0bc0a801c901838d8ac43b3279</sysID>
        <type>Windows</type>
        <version>2</version>
    </task>
    <task>
        <description>description</description>
        <name>test task 2</name>
        <sysID>410d6880c0a801c90196685fcc1ecb47</sysID>
        <type>Windows</type>
        <version>9</version>
    </task>
</tasks>

В нем перечислены все задачи.

Но мне нужно получить только список названий задач. Есть ли способ как это указать в запросе? Или мне нужно разобрать его после?

Или более общий вопрос: есть ли способ определить в запросе, какие теги и атрибуты будут возвращены в качестве ответа?

Мой запрос сейчас:

response = req.post(uac_path, auth=HTTPBasicAuth(user, pw), 
headers=headers, data=prop_params, verify=True)

Ответы [ 2 ]

1 голос
/ 23 апреля 2019

Ответственность за решение о возврате несет сервер, а не клиент.Если сервер не предоставит вам какой-либо способ указать, что должно быть возвращено (например, если это API GraphQL ), вам придется проанализировать ответ самостоятельно.

1 голос
/ 23 апреля 2019

сначала нужно разобрать ответ.В Python есть несколько пакетов для анализа XML:

 - xml.dom
 - xml.dom.minidom
 - xml.dom.pulldom
 - xml.sax
 - xml.parser.expat
 - xml.etree.ElementTree

Вы можете выбрать любой из них или другие сторонние инструменты в Python

...