#!/usr/bin/env python# -*- Coding: UTF-8 -*-# 来源 http://www.oschina.net/code/snippet_219811_14920import sysimport os.pathfrom PyQt4 import QtGui,QtCore,QtWebKitclass PageShotter(QtGui.QWidget): def __init__(self,url,filename,parent=None): QtGui.QWidget.__init__(self,parent) self.url = url self.filename = filename self.webpage = None 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.save_page) def save_page(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= self.filename; 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.youku.com/",'shot.png') shotter.shot() sys.exit(app.exec_())
#!/usr/bin/env python# -*- Coding: UTF-8 -*-import timefrom selenium import webdriverbrowser = webdriver.firefox()browser.set_window_size(1055,800)browser.get("http://www.yooli.com/")browser.find_element_by_ID("IDClose").click()time.sleep(5)browser.save_screenshot("shot.png")browser.quit()总结
以上是内存溢出为你收集整理的使用python对整个网页进行截图全部内容,希望文章能够帮你解决使用python对整个网页进行截图所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)