如何合并python lxml树

0 投票
1 回答
523 浏览
提问于 2025-04-16 20:23

我正在使用他们创建的refreshbooks[1] Python脚本来操作freshbooks的API。每次调用最多只能获取100个结果,所以我想把多个调用组合在一起,以便生成一个可以用在jquery datatables中的大列表。我的问题是,如何把这两个元素树合并在一起?

这里有两个简单的调用,每次获取一个结果:

client_response = c.client.list(
    per_page=1,
    page=1
)
client_response2 = c.client.list(
    per_page=1,
    page=2
)

而在client_response.clients中的基本响应看起来是这样的:

<clients xmlns="http://www.freshbooks.com/api/" page="1" per_page="1" pages="2" total="2">
    <client>...</client>
</clients>

我尝试把它们当作列表来处理,并使用.extend方法,但没有成功。

更新:这些对象实际上是lxml.objectify.ObjectifiedElement对象,而不是真正的树,但我想知道如何合并这些对象……

[1] http://pypi.python.org/pypi/refreshbooks/

1 个回答

1

我先把这些项目转换成列表,然后再把它们合并成一个列表。

clients = list(client_response.clients.client)
clients.extend(list(client_response2.clients.client))

撰写回答