使用PyQt4的QtWebKit对整个网页截图,pyqt4qtwebkit截图,pageshot.py#
使用PyQt4的QtWebKit对整个网页截图,pyqt4qtwebkit截图,pageshot.py#
pageshot.py
#-*- coding:utf-8 -*-import sysimport os.pathfrom PyQt4 import QtGui,QtCore,QtWebKitclass PageShotter(QtGui.QWidget): def __init__(self,url,parent=None): QtGui.QWidget.__init__(self,parent) self.url = url def shot(self): webView = QtWebKit.QWebView(self) webView.load(QtCore.QUrl(self.url)) self.webPage = webView.page() self.connect(webView,QtCore.SIGNAL("loadFinished(bool)"),self.savePage) def savePage(self,finished): #print finished if finished: print u"开始截图!" size = self.webPage.mainFrame().contentsSize() print u"页面宽:%d,页面高:%d" % (size.width(),size.height()) self.webPage.setViewportSize(QtCore.QSize(size.width()+16,size.height())) img = QtGui.QImage(size, QtGui.QImage.Format_ARGB32) painter = QtGui.QPainter(img) self.webPage.mainFrame().render(painter) painter.end() fileName= "shot.png"; if img.save(fileName): filePath = os.path.join(os.path.dirname(__file__), fileName) print u"截图完毕:%s" % filePath else: print u"截图失败"; else: print u"网页加载失败!" self.close()if __name__=="__main__": app = QtGui.QApplication(sys.argv) #shotter = PageShotter("http://www.adssfwewfdsfdsf.com") shotter = PageShotter("http://www.oschina.net/") shotter.shot() sys.exit(app.exec_())
相关内容
- 登录网站,,Copy来的,看起来有用
- 主要城市及时气温,主要城市气温,temperature.
- 提取网页正文,提取正文,[Python]代码#e
- python与计算物理:实现数值积分的Simpson方法,pythonsi
- 使用python的正则表达式做词法分析器,python词法,[Pyth
- 我在做FTP爆破破解 遇到点问题想请教下大师们,ftp爆
- 多线程采集图片,多线程采集,do.py#! /usr
- 很好玩的一个面试题,很好玩一个面试题,[Python]代码
- 基于Tornado And MySQL的RSS移动服务端.zip,tornadorss,[Python
- 初识聚类算法: DBSACN,初识聚类算法dbsacn,[Python]代码#
评论关闭