【发布时间】:2021-07-21 08:02:21
【问题描述】:
我正在尝试将 wkhtmltopdf 与 lambda 一起使用。我创建了一个带有结构的 zip 文件并制作了一个图层。
wkhtmltopdf.zip
├───bin
├───fonts
│ └───dejavu
└───lib
wkhtmltopdf.exe 在 bin 文件夹中的位置。我的代码,
pdfconf = pdfkit.configuration(wkhtmltopdf=os.getenv('PATH')+"/wkhtmltopdf.exe")
错误信息,
找不到 wkhtmltopdf 可执行文件:“/var/lang/bin:/usr/local/bin:/usr/bin/:/bin:/opt/bin/wkhtmltopdf.exe”
感谢您宝贵的时间。
【问题讨论】:
-
试试
/opt/bin/wkhtmltopdf.exe -
-
PATH保留系统用于搜索可执行文件的文件夹列表 - 它不是单一路径 - 因此将其与+ "/wkhtmltopdf.exe"一起使用会创建完全错误的路径。您应该使用Current Working Directory-os.getcwd() + "/wkhtmltopdf.exe"- 或使用运行代码的路径os.path.dirname(os.path.abspath(__file__)) + "/wkhtmltopdf.exe" -
@jellycsc 你是救生员!您的解决方案对我有用!谢谢!你可以回答我可以接受吗?
-
@furas 显然 lambda 允许您使用任何二进制文件,并且 wkhtmltopdf 有一个可以在 lambda 中使用的单独版本。谢谢你的建议。当有多个层时,我将做更多关于路径如何工作的研究。干杯! wkhtmltopdf.org/downloads.html
标签: python amazon-web-services aws-lambda aws-lambda-layers