У меня есть следующий XML-файл:
<?xml version="1.0" encoding="UTF-8"?>
<!--This is to override browser formatting; see server.conf[httpServer] to disable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-->
<?xml-stylesheet type="text/xml" href="/static/atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:s="http://dev.splunk.com/ns/rest" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
<title>savedsearch</title>
<id>https://website.com</id>
<updated>2019-09-26T01:21:06-05:00</updated>
<generator build="657388c7a488" version="7.3.0"/>
<author>
<name>Splunk</name>
</author>
<link href="/services/saved/searches/_new" rel="create"/>
<link href="/services/saved/searches/_reload" rel="_reload"/>
<link href="/services/saved/searches/_acl" rel="_acl"/>
<opensearch:totalResults>92</opensearch:totalResults>
<opensearch:itemsPerPage>30</opensearch:itemsPerPage>
<opensearch:startIndex>0</opensearch:startIndex>
<s:messages/>
<entry>
<title>MyTitle</title>
<id>https://website.com</id>
<updated>1969-12-31T18:00:00-06:00</updated>
<link href="/servicesNS/nobody/some_name/saved/searches" rel="alternate"/>
<author>
<name>nobody</name>
</author>
<link href="/servicesNS/nobody/some_name/saved/searches/" rel="list"/>
<link href="/servicesNS/nobody/some_name/saved/searches" rel="_reload"/>
<link href="/servicesNS/nobody/some_name/saved/searches" rel="edit"/>
<link href="/servicesNS/nobody/some_name/saved/searches/disable" rel="disable"/>
<link href="/servicesNS/nobody/some_name/saved/searches/dispatch" rel="dispatch"/>
<link href="/servicesNS/nobody/some_name/saved/searches/embed" rel="embed"/>
<link href="/servicesNS/nobody/some_name/saved/searches/history" rel="history"/>
<content type="text/xml">
<s:dict>
<s:key name="eai:acl">
<s:dict>
<s:key name="app">some_name</s:key>
<s:key name="can_change_perms">1</s:key>
</s:dict>
</s:key>
</s:dict>
</content>
Я хочу получить значение тегов title , id в теге entry т.е. MyTitle & https://website.com и s: имя ключа = "приложение" т.е. some_name .Поскольку у этого XML есть namesapce, я использовал приведенный ниже код для получения title и id
for ele in root.findall('{http://www.w3.org/2005/Atom}entry'):
name = ele.find('{http://www.w3.org/2005/Atom}title')
url = ele.find('{http://www.w3.org/2005/Atom}id')
, но когда дело доходит до s: key name = "app" Я не могу получить значение. Я попытался использовать приведенный ниже код для получения значения:
for app in root.findall('{http://a9.com/-/spec/opensearch/1.1/}s:dict'):
app_name = app.find('{http://a9.com/-/spec/opensearch/1.1/}s:key}')