问题标签 [django-wkhtmltopdf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
128 浏览

django - Apache2 上的 Django,没有 celery 的 django-wkhtmltopdf 运行 shell 子进程

过去,为了使用 Debian 服务器在 Apache2 上通过 WSGI 从 Django 进行任何 os 二进制调用,我不得不使用 celeryd 对消息进行排队,打开一个子进程(出于安全原因,Apache2 不会创建新的子进程,但也许还有另一种方法 - 我似乎找不到一个并且这有效)。

我找到了 django-wkhtmltopdf 包装器,它非常适合我的情况,从 shell 运行。但是,当我从网页运行它时,它给了我一个 CalledProcessError: Command 返回非零退出状态 1,在日志或回溯中没有其他详细信息。

这是同一个问题吗?Apache2 无法调用 wkhtmltopdf 的子进程,因为 Apache2 不允许子进程?

感谢您的帮助或任何指导,我可以找到一些!

0 投票
1 回答
1066 浏览

django - Subprocess error in wkhtmltopdf in a docker environment

Getting the error below when I try to run wkhtmltopdf in a docker environment.

subprocess.CalledProcessError: Command '['wkhtmltopdf', '--encoding', 'utf8', '--margin-top', '10', '--quiet', '/tmp/wkhtmltopdf85qv7fvc.html', '-']' died with <Signals.SIGABRT: 6>.

The code is seen below.

It is working in an Ubuntu 16.04 vagrant machine. However, when I move it to a docker environment, it fails with the error above. At first I was using a Python3.6 image then changed to an Ubuntu 16.04 image thinking that maybe wkhtmltopdf requires a fuller linux environment. But still no luck.

0 投票
1 回答
259 浏览

wkhtmltopdf - wkhtmltopdf 从 PDF 中排除 css 文件,但以 HTML 显示

我正在使用 wkhmtltopdf 并发现我遇到了问题。在转换为 PDF 之前,我正在使用 html 页面在浏览器中预览内容。

但是为了使它在我的预览中更具可读性,我在页面上添加了一些 css:(在 javascript/jQuery on document ready)

所以这一切都很好而且很花哨,但是当我基于这个 HTML 页面生成我的 PDF 时,css 也会在我的 PDF 中呈现,并且大纲和背景也存在于 PDF 中。

我不希望这种情况发生,我只希望我的 css 样式元素在 HTML 页面上呈现,而不是在 PDF 中呈现。

我怎样才能做到这一点?

我尝试了以下方法:

但这没关系。

有任何想法吗?

0 投票
2 回答
839 浏览

python - Django - wkhmltopdf - CalledProcessError(仅适用于命令行中的 sudo)

我正在尝试使用django-wkhtmltopdf. 问题是wkhtmltopdf开始提出:

无法弄清楚问题出在哪里,但我注意到我什至无法在命令行中执行(我在 virtualenv 中):

它仅适用于sudo特权(但我在 PyCharmProject 我的用户目录中):

我还注意到文件夹中的一些临时html文件/tmp/没有被删除。

这是 Django 返回的完整回溯:

追溯:

你有什么想法?我尝试安装最新wkhtmltopdf版本,但没有帮助。

我唯一的想法是user运行wkhtmltopdf没有特权,/tmp/但我不知道。

编辑 - 视图

0 投票
2 回答
1992 浏览

python - Python wkhtmltopdf 无法导入模块

我正在使用 Python 3.6 版、Django 1.9 版和 wkhtmltopdf 0.2 版。我的 Python 不是 GCC,而是 Anaconda3。

运行我使用的项目时,wkhtmltopdf将引发以下错误:

这就是我导入 wkhtmltopdf 的方式:

0 投票
0 回答
199 浏览

python - uwsgi环境下wkhtmltopdf获取CalledProcessError

我在 uwsgi 环境下得到一个 CalledProcessError,而我可以在 django normal runserver-mode 中运行它,并且可以直接在命令行中正确运行该命令。这是我的环境: 环境:

追溯:

和我的 uwsgi 配置:

我已经将 wkhtmltopdf 改成 www-data:www-data,这仍然无法正常工作,我不知道这是否与特权有关。我的 wkhtmltopdf 版本是 wkhtmltopdf 0.12.4(带有修补的 qt),我尝试从 wkhtmltopdf 获取 stderr 输出,但我只能获取 stdout

0 投票
0 回答
135 浏览

ajax - 带有 AJAX 请求的 django-wkhtmltopdf 将获得 403 Forbidden

描述

我想从 Django 视图生成一个 PDF 文件,所以我正在使用django-wkhtmltopdf应用程序,该应用程序正在运行,但我的模板(在视图中使用)有许多使用 jQuery 的 AJAX 请求。AJAX 请求所请求的视图受 csrf 令牌保护。

问题

403 Forbidden由于 CSRF 验证失败,所有 AJAX 请求都得到响应。

审判

我试过django-cors-headers了,仍然得到相同的响应。

0 投票
1 回答
850 浏览

python - python pdfkit不渲染封面

我正在使用 pdfkit 从 html 字符串创建 pdf。

这是我的代码:

如果我不使用封面它工作正常,如果我使用封面它会引发以下错误:

我认为这可能是因为我使用字符串作为封面而不是 url 用于 html。

所以,我添加了一个返回 html 的端点,即使这样它仍然会抛出同样的错误。

这是它的 url 版本:django 端点

如果尝试从邮递员那里击中端点,则端点在外面可以正常工作。但是如果将它与 pdfkit 一起使用,它会抛出 ConnectionRefusedError。

如果我一起移除封面,它工作正常,它会创建 pdf。但是,需要封面。有什么建议么?

0 投票
0 回答
183 浏览

django - Django-wkhtmltopdf 在服务器上崩溃

我有一个使用django-wkhtmltopdf. 它在本地工作,但是当我在 VPS 上运行时,出现以下错误。

命令'['wkhtmltopdf', '--allow', 'True', '--enable-local-file-access', '--encoding', 'utf8', '--javascript-delay', '2000' , '--page-height', '465mm', '--page-width', '297mm', '--quiet', '/tmp/wkhtmltopdffyknjyrk.html', '-']' 返回非零退出状态 1。

我猜我需要在 VPS 上设置一些权限以允许创建临时文件(或为其设置目录),但我不确定如何执行此操作。

settings.py我有

在 django 视图中,我得到了:

0 投票
0 回答
729 浏览

javascript - 使用 wkhtmltopdf 将 D3 图表转换为 pdf

我有几个 D3 图表,一个是基本的热图,另一个是甜甜圈图或条形图。使用 wkhtmltopdf 时,饼图、甜甜圈图和条形图都将以 PDF 格式显示,但我的热图不会。我不明白为什么不。

这是一个工作条形图(注意,我通过 Django 模板将数据传递给图表):

这是不工作(简单)的热图:

此热图完全按照我在浏览器窗口中的预期呈现,但是当我尝试使用 django-wkhtmltopdf 将其发送到 PDF 时,图像不会出现。

请注意<script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script>实际上是在<head> ... </head>html 文件的顶部,但我包含在本地脚本中以显示我已包含它。这两个图表以及许多其他图表都在同一个 html 页面中。热图是唯一没有在 wkhtmltopdf 中呈现的。

任何帮助解释为什么它不呈现(以及如何修复)将不胜感激