首页 文章

为什么Python 3没有找到已安装的软件包(例如BeautifulSoup4)?

提问于
浏览
1

使用Ubuntu 16.04和Python 3.5我得到一些包的导入错误,例如'BeautifulSoup4'或'要求' . 这两个库都是从Ubuntu存储库安装的:

$ dpkg --get-selections | grep -E "python3-req|python3-bs"
python3-bs4                         install
python3-requests                    install

然而我得到“ImportError:没有名为'bs4'/'requests'的模块” .

$ python3 -c "import bs4"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named 'bs4'

只有当我(另外!)通过pip3安装这些库时,它才有效 . BeautifulSoup的文档说通过apt安装它为“python3-bs4” . 为什么它只适用于pip3方法? python3-bs4 / python3-requests包的目的是什么?

1 回答

  • 0

    我能够解决这个问题 .

    我仍然不太确定究竟是什么问题,但我怀疑pip3并且相互混淆了实际安装的内容 . pip3还列出了几个通过 apt 安装的python包 .

    我通过 pip3 list 识别的apt删除/清除了所有内容,并清除了pip3 . 然后我 apt install --reinstall 之前给我带来麻烦的软件包:python3-bs4和python3-requests . requests 库仍然无法正常工作,因为它错过了报告已经由apt安装的软件包 python3-sixpython3-chardetpython3-urllib3 . apt install --reinstall 也解决了这个问题 . 然后它奏效了!

相关问题