Python 导入 BeautifulSoup 无效

Python import BeautifulSoup not working

我有一个 Python 脚本想要使用 BeautifulSoup:

from bs4 import BeautifulSoup

当我从命令行运行脚本时,它工作正常。当我从浏览器外部 运行 脚本时,它在那一行死掉了。网络日志说:

ImportError: No module named bs4

我也试过,结果一样:

import bs4
import BeautifulSoup

我从 tarball 安装了模块,它现在驻留在我的 Python 路径中的一个文件夹中:

/usr/home/myName/.local/lib/python2.7/site-packages/

我已经确保 bs4 目录的权限,以及文件夹中的所有 .py 和 .pyc 文件都允许执行 (chmod 775 *.py),并且我已经检查过这两个文件Python 的内部和外部版本相同 运行 (2.7.9 (default, Jan 12 2015, 16:33:18) [GCC 4.2.1 20070719 [FreeBSD]])

为了计算机上所有用户的利益,您还没有安装 BeautifulSoup。相反,您只是为了名为 "myName" 的用户的利益而安装。特别是,您还没有安装它供运行 Web 服务器(通常命名为 'www' 或 'www-data')的用户使用。

如果可以,请在系统范围的位置安装 BeautifulSoup。

否则,您可以像这样修改脚本:

import sys
sys.path[0:0] = ['/usr/home/myName/.local/lib/python2.7/site-packages/']
from bs4 import BeautifulSoup

感谢@robᵩ (phi) 指出问题所在:因为这个脚本在共享服务器上,所以我无法向 "user" 运行 网络授予执行权限服务器(在这种情况下,"nobody")。我 能够使用 ssh 运行 脚本,因为我是那种情况下的用户。

因为我无法说服托管服务为所有用户安装 BeautifulSoup,所以我最终使用了不同的库 lxml.html,我的主机服务器确实安装了 Python ].

(我发现 lxml.html 也很高兴一起工作)