FPDF ImportError: No module named fpdf
FPDF ImportError: No module named fpdf
我正在尝试 运行 来自 PHP 的 python 脚本。 python 脚本从文本文件中读取内容并相应地创建 PDF。当我从终端 运行 Python
脚本时,它运行良好,我按预期获得了所需的 PDF。但是当我尝试 运行 来自 PHP 的 python 脚本时,它给了我以下错误:
Traceback (most recent call last): File "/home/amogh/server/test.py", line 3, in from fpdf import FPDF ImportError: No module named fpdf
PHP代码:
<?php
$output = shell_exec("/home/amogh/server/test.py 2>&1");
echo $output;
?>
Python代码:
#! /usr/bin/python
from fpdf import FPDF
fp = open('downloads/boot.txt', 'r')
pdf = FPDF()
pdf.add_page()
pdf.set_font('Arial', '', 11)
line = fp.read()
pdf.multi_cell(200, 5, line, 0, 1)
pdf.output('test.pdf', 'F')
我已经使用此命令安装了 fpdf
:
pip install fpdf
我运行正在 lighttpd
服务器上安装我的 PHP 文件。谁能告诉我哪里错了?
可能是因为运行使用脚本的用户不同。我认为当你从 php 运行 时,它是作为用户 www-data
执行的
也许你 运行 来自 virtualenv 的 pip 或出于某些其他原因 www-data 用户无法访问 fpdf 模块。
编辑:
来自评论的有用链接:
How to install Python Package for global use by all users (incl. www-data)
http://nocurve.com/2018/04/23/running-python-script-from-php-as-www-data/
我正在尝试 运行 来自 PHP 的 python 脚本。 python 脚本从文本文件中读取内容并相应地创建 PDF。当我从终端 运行 Python
脚本时,它运行良好,我按预期获得了所需的 PDF。但是当我尝试 运行 来自 PHP 的 python 脚本时,它给了我以下错误:
Traceback (most recent call last): File "/home/amogh/server/test.py", line 3, in from fpdf import FPDF ImportError: No module named fpdf
PHP代码:
<?php
$output = shell_exec("/home/amogh/server/test.py 2>&1");
echo $output;
?>
Python代码:
#! /usr/bin/python
from fpdf import FPDF
fp = open('downloads/boot.txt', 'r')
pdf = FPDF()
pdf.add_page()
pdf.set_font('Arial', '', 11)
line = fp.read()
pdf.multi_cell(200, 5, line, 0, 1)
pdf.output('test.pdf', 'F')
我已经使用此命令安装了 fpdf
:
pip install fpdf
我运行正在 lighttpd
服务器上安装我的 PHP 文件。谁能告诉我哪里错了?
可能是因为运行使用脚本的用户不同。我认为当你从 php 运行 时,它是作为用户 www-data
执行的也许你 运行 来自 virtualenv 的 pip 或出于某些其他原因 www-data 用户无法访问 fpdf 模块。
编辑:
来自评论的有用链接:
How to install Python Package for global use by all users (incl. www-data)
http://nocurve.com/2018/04/23/running-python-script-from-php-as-www-data/