Vor*_*Vor 11 python pyqt qwebview
如何在控制台中以HTML格式显示网页.
import sys
from PyQt4.QtGui import QApplication
from PyQt4.QtCore import QUrl
from PyQt4.QtWebKit import QWebView
app = QApplication(sys.argv)
view = QWebView()
view.load(QUrl('http://example.com')
# What's next? how to do something like:
# print view.read() ???
# to display something similar to that:
# <html><head></head><body></body></html>
Run Code Online (Sandbox Code Playgroud)
and*_*ean 22
由于QT是一个异步库,如果您在调用load后立即尝试查看webview的html数据,则可能不会有任何结果,因为它会立即返回,并在结果可用时触发loadFinished信号.您当然可以尝试以与在调用load后立即使用_result_available方法相同的方式访问html数据,但它将返回一个空页面(这是默认行为).
import sys
from PyQt4.QtGui import QApplication
from PyQt4.QtCore import QUrl
from PyQt4.QtWebKit import QWebView
class Browser(QWebView):
def __init__(self):
QWebView.__init__(self)
self.loadFinished.connect(self._result_available)
def _result_available(self, ok):
frame = self.page().mainFrame()
print unicode(frame.toHtml()).encode('utf-8')
if __name__ == '__main__':
app = QApplication(sys.argv)
view = Browser()
view.load(QUrl('http://www.google.com'))
app.exec_()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
26365 次 |
最近记录: |