[英]Python - unable to import vlc module
我剛剛通過 pip 安裝了 python-vlc,當我嘗試時
import vlc
顯示以下錯誤消息:
... ...
File "c:\Program Files\Python34\Lib\site-packages\vlc.py", line 173, in <module>
dll, plugin_path = find_lib()
File "c:\Program Files\Python34\Lib\site-packages\vlc.py", line 150, in find_lib
dll = ctypes.CDLL('libvlc.dll')
File "c:\Program Files\Python34\Lib\ctypes\__init__.py", line 351, in __init__
self._handle = _dlopen(self._name, mode)
builtins.OSError: [WinError 126] The specified module could not be found
我不熟悉 ctypes 模塊。 是什么導致了問題?
問題已解決。 我使用的是 64 位 python 和 32 位 VLC。 安裝 64 位 VLC 程序解決了這個問題。
Windows 上python-vlc
需要從 VLC 加載libvlc.dll
。 如果在正常的%PATH%
中找不到它,它將嘗試使用pywin32
在注冊表中查找 VLC 安裝路徑,然后回退到一組硬編碼的目錄。 堆棧跟蹤看起來所有這些都失敗了。
你有安裝 VLC 嗎?
您安裝了 VLC 32 位,因此您的路徑轉到程序文件(x86),您的代碼在程序文件中搜索 VLC 文件。 這就是您收到此錯誤的原因。 為了解決這個問題,我們需要為 64 位安裝 VLC。
我也下載了64位版本。 但它仍然不起作用。
進口vlc
media = vlc.MediaPlayer(r"C:\\Users\\ionas\\Documents\\Visual Studio Code\\Project_Rin\\files\\我應該留下還是應該去.mp3")
媒體播放()
我遇到了同樣的問題。 要修復它,我實際上必須安裝 x86 版本而不是x64 位版本......無論我做什么它都行不通。 我通過查看用於查找路徑的代碼發現了這一點。 使用斷點查看它在存在流中看到的內容以及正在搜索的內容:
if plugin_path is None:
# try some standard locations.
programfiles = os.environ["ProgramFiles"]
homedir = os.environ["HOMEDRIVE"]
for p in ('{programfiles}\\VideoLan{libname}', '{homedir}:\\VideoLan{libname}',
'{programfiles}{libname}', '{homedir}:{libname}'):
p = p.format(homedir = homedir,
programfiles = programfiles,
libname = '\\VLC\\' + libname)
if os.path.exists(p):
plugin_path = os.path.dirname(p)
希望它可以幫助某人:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.