1. 运行项目时报错
File "..\factory\user_test.py", line 5, in <module>
import vlc
File "C:\Users\xxx\.conda\envs\mp-tool-kits\lib\site-packages\vlc.py", line 220, in <module>
dll, plugin_path = find_lib()
File "C:\Users\xxx\.conda\envs\mp-tool-kits\lib\site-packages\vlc.py", line 180, in find_lib
dll = ctypes.CDLL('.\\' + libname)
File "C:\Users\xxx\.conda\envs\mp-tool-kits\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 找不到指定的模块。
发现是导入vlc有问题
2. 先说结论
https://pypi.org/project/python-vlc/
vlc的说明中有一句话:Note that it relies on an already present install of VLC.
于是先安装VLC Media Player,再运行项目,就不报错了。
3. 问题解决过程
刚刚已经说了结论,那么是如何发现结论的呢?
3.1. 测试引入vlc
-
首先运行
conda list
和pip list
命令,输出的结果中都有python-vlc
及版本号,说明环境中已有vlc;conda list
和pip list
命令的区别,可以参考conda list 和 pip list 命令的区别 -
运行
import vlc
,结果如下:>>> import vlc Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\xxx\.conda\envs\mp-tool-kits\lib\site-packages\vlc.py", line 220, in <module> dll, plugin_path = find_lib() File "C:\Users\xxx\.conda\envs\mp-tool-kits\lib\site-packages\vlc.py", line 180, in find_lib dll = ctypes.CDLL('.\\' + libname) File "C:\Users\xxx\.conda\envs\mp-tool-kits\lib\ctypes\__init__.py", line 348, in __init__ self._handle = _dlopen(self._name, mode) OSError: [WinError 126] 找不到指定的模块。
-
说明vlc的引入存在问题
3.2. 去找vlc的安装路径
-
找到vlc的文件夹,如下文章来源:https://www.toymoban.com/news/detail-693295.html
-
发现文件夹中并没有任何的py文件,于是怀疑是未安装成功,进行卸载重装;文章来源地址https://www.toymoban.com/news/detail-693295.html
3.3. 卸载重装vlc
- 使用
pip uninstall python-vlc
命令卸载vlc; - 使用
pip install python-vlc
命令安装vlc; - 重新找到vlc的文件夹,依然没有任何py文件;
- 搜索“vlc”,结果发现vlc.py文件在Lib->site-packages文件夹下;
3.4. 去vlc官网寻找答案
- google搜索pypi vlc,进入仓库 https://pypi.org/project/python-vlc/
- 发现一行小字:Note that it relies on an already present install of VLC.
3.5. 安装VLC Media Player
- 安装VLC Media Player;
- 重新运行项目,无报错,问题解决;
到了这里,关于Python环境找不到vlc —— 要先安装VLC Media Player的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!