Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何使用python3将HTML转换为PDF_Python 3.x - Fatal编程技术网

Python 3.x 如何使用python3将HTML转换为PDF

Python 3.x 如何使用python3将HTML转换为PDF,python-3.x,Python 3.x,如何使用python3将HTML转换为PDF?我用pyqt5写了一些关于webView的代码,我想把webView中的html转换成pdf,我应该怎么做 我尝试过使用html2pdf,但它似乎只支持python2.x 我尝试安装wkhtmltox-0.12.2.2_msvc2013-win64.exe和pdfkit,然后使用示例代码 import pdfkit pdfkit.from_url('http://google.com', 'out.pdf') pdfkit.from_file('t

如何使用python3将HTML转换为PDF?我用pyqt5写了一些关于webView的代码,我想把webView中的html转换成pdf,我应该怎么做

我尝试过使用html2pdf,但它似乎只支持python2.x 我尝试安装wkhtmltox-0.12.2.2_msvc2013-win64.exe和pdfkit,然后使用示例代码

import pdfkit

pdfkit.from_url('http://google.com', 'out.pdf')
pdfkit.from_file('test.html', 'out.pdf')
pdfkit.from_string('Hello!', 'out.pdf')
但是我也失败了。错误如下

Traceback (most recent call last):
File "E:\Python34\lib\site-packages\pdfkit\configuration.py", line 21,  in __init__
with open(self.wkhtmltopdf) as f:
FileNotFoundError: [Errno 2] No such file or directory: b''

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
  pdfkit.from_url('http://google.com', 'out.pdf')
File "E:\Python34\lib\site-packages\pdfkit\api.py", line 22, in from_url
configuration=configuration)
File "E:\Python34\lib\site-packages\pdfkit\pdfkit.py", line 38, in __init__
self.configuration = (Configuration() if configuration is None
File "E:\Python34\lib\site-packages\pdfkit\configuration.py", line 27, in __init__
'https://github.com/JazzCore/python-pdfkit/wiki/Installing-wkhtmltopdf' % self.wkhtmltopdf)
OSError: No wkhtmltopdf executable found: "b''"
If this file exists please check that this process can read it.   Otherwise please install wkhtmltopdf - https://github.com/JazzCore/python-pdfkit/wiki/Installing-wkhtmltopdf
回溯(最近一次呼叫最后一次):
文件“E:\Python34\lib\site packages\pdfkit\configuration.py”,第21行,在\uu init中__
将open(self.wkhtmltopdf)作为f:
FileNotFoundError:[Errno 2]没有这样的文件或目录:b“”
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
pdfkit.from_url('http://google.com“,”out.pdf“)
文件“E:\Python34\lib\site packages\pdfkit\api.py”,第22行,在from\u url中
配置=配置)
文件“E:\Python34\lib\site packages\pdfkit\pdfkit.py”,第38行,在\uu init中__
self.configuration=(如果配置为None,则为configuration()
文件“E:\Python34\lib\site packages\pdfkit\configuration.py”,第27行,在\uu init中__
'https://github.com/JazzCore/python-pdfkit/wiki/Installing-wkhtmltopdf“%self.wkhtmltopdf)
OS错误:未找到wkhtmltopdf可执行文件:“b”
如果此文件存在,请检查此进程是否可以读取它。否则请安装wkhtmltopdf-https://github.com/JazzCore/python-pdfkit/wiki/Installing-wkhtmltopdf

但我也失败了。那我该怎么办呢?我的系统是window7 x64,python的版本是3.4

“设置路径”
可能意味着将
**.exe
添加到系统环境变量
$path$
。例如,将
D:\ProgramFiles\wkhtmltopdf\bin
添加到
$Path$

因为这还没有一个公认的答案,所以我在多次搜索并尝试使用PyPDF2、PyPDF2的wkhtmltopdf beta分支、Python3的qpdf等失败后发现了一个在Python3中工作的很棒的库。它是weasyprint。我有相关的答案和示例代码

为完整起见,请参阅:

从weasyprint导入HTML
HTML('http://weasyprint.org/)。请编写_pdf('/tmp/weasyprint website.pdf')


这真的很容易

我重新安装wkhtmltox并设置路径,我工作得很好!!嗨,zonzely,我也有同样的问题。你是怎么做到的?你所说的“设置路径”是什么意思?这并不能回答这个问题。您可以,也可以参考页面右侧的相关和链接问题来找到答案。如果您有一个相关但不同的问题,并包含指向此问题的链接以帮助提供上下文。看:Weasy太容易了。谢谢