使用 raw_input 会导致 PyQt 页面加载出现问题
Using raw_input causes problems with PyQt page loading
我正在使用 PyQt4 将凭据输入域登录页面并从域中的其他几个页面提取数据。从代码中提供登录或搜索凭据时,一切都按预期工作。当我打开 raw_input 以允许用户输入信息时,它会导致尝试下载其中一个网页时挂起。我无法在页面本身上提供信息,因为它在公司网络上,但简单地使用 raw_input 会导致 QWebpage 加载问题是没有意义的。
QNetworkManager 抛出预期的 3 或 4 个 .finished 信号中的 1 个,而 QWebpage 框架从不抛出 .loadfinished 信号,因此它只是挂起。
(我尝试刷新 stdin 和 seek(0),这给了我一个错误的文件描述符错误)。有没有人运行遇到过这样的问题?
raw_input
使用 synchronous/blocking IO 而没有让 Qt 有机会在后台继续处理事件。 Qt 并没有真正准备好以这种方式停止处理。理论上它应该在 raw_input 完成后恢复。但也许与此同时发生了超时或类似的事情。使用 Qt 时,您确实应该使用基于 signal/event 的输入。
如果 GUI 交互正常,您应该尝试 QInputDialog::getText,因为它看起来像是来自外部的阻塞调用,但在内部让 Qt 继续处理后台作业。
我正在使用 PyQt4 将凭据输入域登录页面并从域中的其他几个页面提取数据。从代码中提供登录或搜索凭据时,一切都按预期工作。当我打开 raw_input 以允许用户输入信息时,它会导致尝试下载其中一个网页时挂起。我无法在页面本身上提供信息,因为它在公司网络上,但简单地使用 raw_input 会导致 QWebpage 加载问题是没有意义的。
QNetworkManager 抛出预期的 3 或 4 个 .finished 信号中的 1 个,而 QWebpage 框架从不抛出 .loadfinished 信号,因此它只是挂起。
(我尝试刷新 stdin 和 seek(0),这给了我一个错误的文件描述符错误)。有没有人运行遇到过这样的问题?
raw_input
使用 synchronous/blocking IO 而没有让 Qt 有机会在后台继续处理事件。 Qt 并没有真正准备好以这种方式停止处理。理论上它应该在 raw_input 完成后恢复。但也许与此同时发生了超时或类似的事情。使用 Qt 时,您确实应该使用基于 signal/event 的输入。
如果 GUI 交互正常,您应该尝试 QInputDialog::getText,因为它看起来像是来自外部的阻塞调用,但在内部让 Qt 继续处理后台作业。