QtReactor 关闭应用Window(使用Scrapy)

QtReactor Closes Application Window (Using Scrapy)

我已经设置了一个基本的 QT (PyQt4) 应用程序。它使用 Scrapy 运行几个蜘蛛,为了避免在相当冗长的抓取操作期间阻塞 gui,我使用 QtReactor(正如我在几个地方看到的那样)允许我的 GUI 在抓取期间更新。

现在我只有一个旋转的进度条(范围为 0,0),它会在抓取过程中更新。

但是,我有一个问题,一旦抓取完成,我的应用程序就会自行退出。它肯定与 QtReactor 有关,因为没有在下面添加前两行代码,它工作正常(但会阻止 GUI)。

这是什么原因造成的?

谢谢。

我的主要:

from qtreactor import pyqt4reactor
pyqt4reactor.install()

import sys
from PyQt4 import QtGui
from Gui.DkMainWindow import DkMainWindow

if __name__ == "__main__":

    app = QtGui.QApplication(sys.argv)

    form = DkMainWindow()
    form.show()
    sys.exit(app.exec_())

我从未使用过 QtReactor,但我看到的所有示例都是在 创建应用程序后安装的:

import sys
from PyQt4 import QtGui
from Gui.DkMainWindow import DkMainWindow

if __name__ == "__main__":

    app = QtGui.QApplication(sys.argv)

    from qtreactor import pyqt4reactor
    pyqt4reactor.install()

    form = DkMainWindow()
    form.show()
    sys.exit(app.exec_())

但如果这没有关系,您可能还想尝试一下:

    app.setQuitOnLastWindowClosed(False)