Python中使用PyQt把网页转换成PDF操作代码实例

yipeiwu_com6年前Python基础

代码很简单,功能也很简单 =w=

webpage2pdf

#!/usr/bin/env python3
 
import sys
 
try:
 from PyQt4 import QtWebKit
 from PyQt4.QtCore import QUrl
 from PyQt4.QtGui import QApplication, QPrinter
except ImportError:
 from PySide import QtWebKit
 from PySide.QtCore import QUrl
 from PySide.QtGui import QApplication, QPrinter
 
app = QApplication(sys.argv)
 
def done(status):
 p = QPrinter()
 p.setOutputFormat(QPrinter.PdfFormat)
 p.setOutputFileName('a.pdf')
 view.print(p)
 app.exit()
 
view = QtWebKit.QWebView()
view.load(QUrl('http://lilydjwg.is-programmer.com/'))
view.loadFinished[bool].connect(done)
# PySide does not have QApplication.exec
app.exec_()

注意:虽然没有图形界面,但是还是需要 X 连接……

相关文章

python魔法方法-属性访问控制详解

python魔法方法-属性访问控制详解

属性访问控制 所谓的属性访问控制就是控制点号访问属性的行为,而且不仅是类的外部,连类的内部也受控制,代码见真章,边看代码边解释: •__getattr__(self, ite...

sqlalchemy对象转dict的示例

复制代码 代码如下:def sa_obj_to_dict(obj, filtrate=None, rename=None):    """ &nb...

python无限生成不重复(字母,数字,字符)组合的方法

使用python自带的itertools模块 调用其product函数 传入我们想组合生成的字符数据 便会源源不断的生成组合 而且不会重复 repeat参数指定生成多少位 impor...

python使用Turtle库绘制动态钟表

python使用Turtle库绘制动态钟表

Python函数库众多,而且在不断更新,所以学习这些函数库最有效的方法,就是阅读Python官方文档。同时借助Google和百度。 本文介绍的turtle库对应的官方文档地址 绘制动态钟...

老生常谈Python序列化和反序列化

通过将对象序列化可以将其存储在变量或者文件中,可以保存当时对象的状态,实现其生命周期的延长。并且需要时可以再次将这个对象读取出来。Python中有几个常用模块可实现这一功能。 pickl...