Error: No module named 'PyQt5.QtMultimedia'

Error: No module named 'PyQt5.QtMultimedia'

我正在尝试构建一个集成视频的 GUI,为此我需要导入 PyQt5.QtMultimedia。然而,当尝试导入模块时(导入 PyQt5.QtMultimedia)我收到一个错误:ModuleNotFoundError: No module named 'PyQt5.QtMultimedia'.

我正在开发 Ubuntu 18.04,我的 Python 软件包来自 Anaconda。 "conda list" 命令报告 pyqt 安装正确,版本 5.9.2。到目前为止,所有其他 PyQt5 导入都运行良好,实际上只有 PyQt5.QtMultimedia 导致问题。

这个问题已经在这些帖子中讨论过:, link2,但他们没有提供任何解决方案。

我尝试卸载(sudo apt-get remove python3-pyqt5.qtmultimedia)并重新安装(sudo apt install python3-pyqt5.qtmultimedia),但没有成功.

有人可以帮忙吗?如果我不能解决这个问题,我的项目就真的卡住了。

非常感谢。

所以,我设法解决了这个问题。有点,使用蛮力。

conda 基本上没有可能的解决方法:

  • conda 安装自己的 PyQt5 版本,称为 pyqt,其中包括 PyQt5 5.9.2 版的大部分(但不是全部)功能。特别是这个版本没有 QtMultimedia,因此出现错误。
  • 你不能在你的 conda Python 上 pip 安装(或常规安装)PyQt5。在这里它似乎会产生冲突并使您的整个 PyQt 设置出现问题。要避免。

所以,剩下的唯一解决办法就是不使用 Python 和 conda。我卸载了 conda(当然没有必要,如果安装的话可能只使用 base python),然后回到 base python。不幸的是,这也意味着 conda 提供的包不再可用。尽管如此,我还是成功安装了PyQt5,现在我可以正常使用QtMultimedia了。

优点:有效

缺点:修复是极端的,因为它意味着完全放弃使用 conda

如果您使用 linux Os 只需安装 python3-pyqt5.qtmultimedia 在 Ubuntu 或基于 Debian 的系统上使用以下命令安装:

sudo apt install python3-pyqt5.qtmultimedia