gpt4 book ai didi

python - 如何在python中检查xml标签值是否为none

转载 作者:行者123 更新时间:2023-12-04 10:59:57 24 4
gpt4 key购买 nike

我正在尝试比较两个 api 响应的数据。其中之一返回 xml。问题是 xml 响应中的标记之一为空。我找不到检查值是否存在的方法。

这是xml响应

<?xml version="1.0" encoding="UTF-8"?>
<FCDB_RES_ENV>
<FCDB_HEADER>
<SOURCE>FCAT</SOURCE>
<FCDBCOMP>FCDB</FCDBCOMP>
<MSGID>MB_31051021591539014</MSGID>
<CORRELID>MB_31051021591539014</CORRELID>
<USERID>615</USERID>
<BRANCH>000</BRANCH>
<MODULEID>LGN</MODULEID>
<SERVICE>GetEmailMobNoDetails</SERVICE>
<OPERATION>GetEmailMobNoDetails</OPERATION>
<SOURCE_USERID>FCAT</SOURCE_USERID>
<DESTINATION>FCDB</DESTINATION>
<COUNTRYCODE>T001</COUNTRYCODE>
<USERTYPE>ENS</USERTYPE>
<LANGID>eng</LANGID>
<CHANNELID>01</CHANNELID>
</FCDB_HEADER>
<FCDB_BODY>
<EMAILID/>
<MOBNO>03006846625</MOBNO>
<FCDB_ERROR_RESP>
<ERROR>
<ECODE>00</ECODE>
<EDESC>Your transaction has been processed successfully.</EDESC>
</ERROR>
</FCDB_ERROR_RESP>
<FCDB_WARNING_RESP>
<WARNING>
<WCODE/>
<WDESC/>
</WARNING>
</FCDB_WARNING_RESP>
</FCDB_BODY>
</FCDB_RES_ENV>


请注意返回 None 值。

下面是需要修改的代码。提前致谢。
response = requests.request("POST", url, data=payload.format(cust_no, cust_type), headers=headers)

tree = ElementTree.ElementTree(ElementTree.fromstring(response2.text))
root = tree.getroot()

for l in root.findall("./FCDB_BODY/EMAILID"):
if l is not None:
xml_email = l.text
print("XML Email is", xml_email)
else:
pass

最佳答案

你在使用 lxml 包吗?因为与

from lxml.etree import ElementTree, fromstring
data = """...""" # your XML string here
tree = ElementTree(fromstring(data))

我看到你有一个语法错误。

此外,您要检索< EMAILID/> 的文本吗?因为这里根本没有文字。

第一次编辑:
from xml.etree import ElementTree

data = """...""" # Your XML string
tree = ElementTree.ElementTree(ElementTree.fromstring(data))
root = tree.getroot()

for l in root.findall("./FCDB_BODY/EMAILID"):
if l is not None:
xml_email = l.text
if xml_email:
print("XML Email is", xml_email)
else:
print("There is no email for this entry")
else:
pass

关于python - 如何在python中检查xml标签值是否为none,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58878534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com