Making your QTextBrowser show remote images
It's remarkably easy to turn your QTextBrowser into a limited web browser, at least good enough to show images from the web.
Here's all the code:
from PyQt4 import QtCore,QtGui import urllib, os, md5 class PBrowser(QtGui.QTextBrowser): def loadResource(self, type, name): url=unicode(name.toString()) ret=QtCore.QVariant() if url.startswith('http://'): dn=os.path.expanduser('~/.bartleblog/cache/') if not os.path.isdir(dn): os.mkdir(dn) m=md5.new() m.update(url) fn=os.path.join(dn,m.hexdigest()) if not os.path.isfile(fn): urllib.urlretrieve(url, fn) ret=QtGui.QTextBrowser.loadResource(self, type, QtCore.QUrl(fn)) else: ret=QtGui.QTextBrowser.loadResource(self, type, name) return ret
And here's bartleblog taking advantage of it:
It even has a primitive cache and everything ;-)