Python 如何在AWS层中获取exe文件的路径?
我正在尝试将wkhtmltopdf与lambda一起使用。我用这个结构创建了一个zip文件,并创建了一个图层 wkhtmltopdf.zipPython 如何在AWS层中获取exe文件的路径?,python,amazon-web-services,aws-lambda,aws-lambda-layers,Python,Amazon Web Services,Aws Lambda,Aws Lambda Layers,我正在尝试将wkhtmltopdf与lambda一起使用。我用这个结构创建了一个zip文件,并创建了一个图层 wkhtmltopdf.zip ├───bin ├───fonts │ └───dejavu └───lib 其中wkhtmltopfd.exe位于bin文件夹中。我的代码 pdfconf = pdfkit.configuration(wkhtmltopdf=os.getenv('PATH')+"/wkhtmltopdf.exe") 错误消息 未找到wkhtm
├───bin
├───fonts
│ └───dejavu
└───lib
其中wkhtmltopfd.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”
感谢您的宝贵时间。根据OP的评论,正确的路径应该是
/opt/bin/wkhtmltopf.exe
尝试/opt/bin/wkhtmltopf.exe
AWS
运行Linux/Unix
并且它可能没有emulatorWINE
来运行Windows
的exe
文件路径
保留系统用于搜索可执行文件的文件夹列表-它是不是单一路径-因此将其与+“/wkhtmltopdf.exe”
一起使用会创建完全错误的路径。您应该使用当前工作目录-os.getcwd()+“/wkhtmltopf.exe”
-或者使用运行代码的路径os.path.dirname(os.path.abspath(\uu file\uuuu))+“/wkhtmltopf.exe”
@jellycsc您是一个救生员!你的解决方案对我有效!谢谢您能回答我的问题吗?@furas lambda允许您使用任何二进制文件,wkhtmltopdf有一个单独的版本,可以在lambda中使用。谢谢你的建议。我将做一些更多的研究,了解当有多个层时路径是如何工作的。干杯