【发布时间】:2022-01-20 01:10:35
【问题描述】:
我是 Python 新手,我有这个 XML 和这个代码。这是一张发票,其中“SalesOrderRet”是抬头,“SalesOrderLineRet”是发票的每一行。我遇到的问题是我不知道如何为每个标题单独读取 SalesOrderLineRet。我在这里的代码是从整个 XML 中添加所有“SalesOrderLineRet”,而不仅仅是标题。
def read_xml():
tree = ET.parse('LastResponse.xml')
root = tree.getroot()
form_data = {}
collection = db["tracking"]
for item in root.iter('SalesOrderRet'):
WO = item.find('RefNumber').text
TimeCreatedQB = item.find('TimeCreated').text
Client = item.find('CustomerRef/FullName').text
for items in root.iter('SalesOrderLineRet'):
descrip = getattr(items.find('Desc'), 'text', None)
【问题讨论】:
-
你可能需要
find_all和for-loop -
你有错误的缩进 - 所以你的代码对我们没用。你应该从 xml 中添加示例数据,这样我们就可以看到它的样子。