我正在使用QGraphicsWebView并尝试迭代QWebElements。第一次尝试:
frame = self.page().mainFrame()
doc = frame.documentElement()
h = frame.findFirstElement("head")
b = frame.findFirstElement("body")
elements = h.findAll("link")
for d in elements :
print d.tagName()
所以你明白我的想法,但后来发现QWebElementCollection中有元素,而不是列表中。请帮助我迭代 DOM 树。
QWebElement
的findAll
方法返回一个QWebElementCollection
,可以使用它的toList()
方法将其转换为QList
实例。要循环访问匹配元素的列表,您可以使用:
body_element = frame.findFirstElement("body")
for el in body_element.findAll("div").toList():
print el.tagName()