我想从以下Pandas DataFrame创建PDF:
import pandas as pd
from pybloqs import Block, html
import pybloqs.block.table_formatters as tf
d = {'one': [1., 2., 3., 4.],
'two': [4., 3., 2., 1.]}
df = pd.DataFrame(d)
block_df = Block(df, formatters=None, use_default_formatters=True)
block_df.save('test.pdf')
,我得到以下错误(图像已附加): “ FileNotFoundError:[WinError 2]系统找不到指定的文件”
根据documentation,它应该可以正常工作。似乎在错误中它也提到了子流程,我还检查了其他duplicate questions指出了subprocess.Popen。
subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
但这不能解决我的问题。出乎意料的是,当我跑步时 block_df.save('test.html')
它在同一目录中创建一个漂亮的HTML文件。但是对于PNG,错误仍然存在。
答案 0 :(得分:0)
在大多数情况下,“ subprocess.Popen(cmd,stdout = subprocess.PIPE,shell = True)”失败,因为它找不到临时文件。由于您要使用PDF,因此pybloqs将使用WkhtmltopdfConverter。
从https://wkhtmltopdf.org/downloads.html安装wkhtmltopdf并将安装目录(即C:\ Program Files \ wkhtmltopdf \ bin)添加到环境路径。
在CMD或PowerShell中运行wkhtmltopdf,以确保已将其正确添加到路径。