获取Soap报文中<msgBody>标签中的内容
时间: 2024-06-07 12:12:01 浏览: 106
BeautifulSoup 获取 a标签里的文本内容
假设你的Soap报文如下所示:
```
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.example.com">
<soapenv:Header/>
<soapenv:Body>
<ser:SomeRequest>
<ser:msgBody>Hello World!</ser:msgBody>
</ser:SomeRequest>
</soapenv:Body>
</soapenv:Envelope>
```
你可以使用一个XML解析库(如Python中的ElementTree)来获取`<msgBody>`标签中的内容。以下是使用ElementTree的Python代码示例:
```python
import xml.etree.ElementTree as ET
# 解析Soap报文
tree = ET.parse('soap_message.xml')
root = tree.getroot()
# 获取msgBody标签中的内容
msg_body = root.find('.//{http://service.example.com}msgBody').text
print(msg_body)
```
输出结果为:`Hello World!`。在上面的代码中,我们首先使用`ET.parse`方法解析了Soap报文并获取了根元素。然后,我们使用`root.find`方法找到`<msgBody>`标签,该标签的命名空间为`http://service.example.com`。最后,我们使用`.text`属性获取该标签中的文本内容。
阅读全文