我正在尝试使用python qt webkit访问网页中的子框架。
childFrames()在列表前面生成一个带有NoneType的空列表,如何直接转到第二个实体,因为我不能使用fr.childFrames()[1] [1]:它会抛出TypeError :'QWebFrame'对象不支持索引。
这些是代码的一部分:
fr = self.page().mainFrame().childFrames()
for f in fr:
print f.frameName()
将输出每帧的帧标题,但如果:
fr = self.page().mainFrame().childFrames()
print fr
将输出
[]
[<PyQt4.QtWebKit.QWebFrame object at 0x14a1200>, <PyQt4.QtWebKit.QWebFrame object at 0x14a1290>, <PyQt4.QtWebKit.QWebFrame object at 0x14a1320>, <PyQt4.QtWebKit.QWebFrame object at 0x14a13b0>]
如果我直接这样:
print fr[1].frameName()
首先抛出IndexError(没有内容的列表),然后从第二个列表中给我框架的标题。
这是预期的行为吗?如果是这样,我如何直接进入第二个列表中的帧。
答案 0 :(得分:0)
您的输出似乎是两个列表 - 第一个是空的,第二个包含QWebFrame。
print fr[1][0].frameName()
给你什么?它应该返回<PyQt4.QtWebKit.QWebFrame object at 0x14a1200>
的框架名称。