Python-XMPP - 迭代 IQ 节项目
Posted
技术标签:
【中文标题】Python-XMPP - 迭代 IQ 节项目【英文标题】:Python-XMPP - Iterate the IQ stanza items 【发布时间】:2013-02-01 21:02:55 【问题描述】:我正在使用 python-xmpp 连接到 gtalk。我正在收到回复,我可以向特定用户/电子邮件发送和接收消息。我正在寻找一种迭代 IQ
项目的方法,以便我可以获得每个项目的 jid
和 name
属性。
IQ 节的形式为:
<iq to="example@gmail.com/test" id="3" type="result">
<query xmlns="jabber:iq:roster">
<item jid="test2@example.com" subscription="both" name="ABCD"/>
<item jid="test2@example.com" subscription="both" name="EFGH"/>
.
.
</query>
</iq>
我还想在收到<presence>
节时更新用户。我猜我应该使用回调,就像我现在正在做的那样来处理消息的接收。
【问题讨论】:
【参考方案1】:我意识到可以将节点解析为任何 xml。 这就是解决我的问题的方法:
query_node=iq_node.getQueryChildren()
for node in query_node:
print node.getAttr("name")
iq_node
是 xmpp.protocol.Iq
对象,每个 node
都是 xmpp.simplexml.Node
对象
【讨论】:
以上是关于Python-XMPP - 迭代 IQ 节项目的主要内容,如果未能解决你的问题,请参考以下文章