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
也很高兴一起工作)
我有一个 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
也很高兴一起工作)