Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试在windows上使用python magic标识文件类型时获取错误消息 我对Python是新的,对C++有一定的了解。我在尝试设置PythonMagic以识别文件类型时收到以下错误消息。我已经使用pip安装了pythonmagic和libmagic。我一尝试导入magic,就会收到错误消息,提示我检查安装_Python - Fatal编程技术网

尝试在windows上使用python magic标识文件类型时获取错误消息 我对Python是新的,对C++有一定的了解。我在尝试设置PythonMagic以识别文件类型时收到以下错误消息。我已经使用pip安装了pythonmagic和libmagic。我一尝试导入magic,就会收到错误消息,提示我检查安装

尝试在windows上使用python magic标识文件类型时获取错误消息 我对Python是新的,对C++有一定的了解。我在尝试设置PythonMagic以识别文件类型时收到以下错误消息。我已经使用pip安装了pythonmagic和libmagic。我一尝试导入magic,就会收到错误消息,提示我检查安装,python,Python,错误消息: # python >>> import magic Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> import magic File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 173, in

错误消息:

# python
>>> import magic
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import magic
  File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 173, in <module>
    raise ImportError('failed to find libmagic.  Check your installation')
ImportError: failed to find libmagic.  Check your installation
>>> 
#python
>>>进口魔术
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
进口魔术
文件“C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site packages\magic.py”,第173行,在
raise ImportError('未能找到libmagic。请检查您的安装')
ImportError:找不到libmagic。检查您的安装
>>> 
谢谢大家,现在我可以导入magic了,但在将magic1.dll和libgnurx-0.dll文件放入我的 C:\Windows\System32文件夹。错误消息如下:

# python

>>> import magic
>>> magic.from_file("userinput.py")
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
magic.from_file("userinput.py")
File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 130, in from_file
m = _get_magic_type(mime)
File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 118, in _get_magic_type
i = _instances[mime] = Magic(mime=mime)
File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 67, in __init__
magic_load(self.cookie, magic_file)
File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 256, in magic_load
return _magic_load(cookie, coerce_filename(filename))
File "C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site-packages\magic.py", line 187, in errorcheck_negative_one
raise MagicException(err)
magic.MagicException
>>> 
#python
>>>进口魔术
>>>magic.from_文件(“userinput.py”)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
magic.from_文件(“userinput.py”)
文件“C:\Users\adamh\AppData\Local\Programs\Python\35\lib\site packages\magic.py”,第130行,在from\u文件中
m=_get_magic_type(mime)
文件“C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site packages\magic.py”,第118行,在“get\U magic”类型中
i=_实例[mime]=Magic(mime=mime)
文件“C:\Users\adamh\AppData\Local\Programs\Python\Python35\lib\site packages\magic.py”,第67行,在u init中__
magic_加载(self.cookie、magic_文件)
文件“C:\Users\adamh\AppData\Local\Programs\Python\35\lib\site packages\magic.py”,第256行,magic\u load
返回_magic_load(cookie,强制文件名(filename))
文件“C:\Users\adamh\AppData\Local\Programs\Python\35\lib\site packages\magic.py”,第187行,在errorcheck\u negative\u one中
引发MagiceException(错误)
magic.MagicException
>>> 
我认为问题在于,我无法使用以下伪命令传递magic.mgc的位置:file\u magic=magic.magic(magic\u file=“c:path\to\magic.mgc”)


任何进一步的帮助都将不胜感激。谢谢大家。

听起来您没有设置正确的依赖项。您是否遵循了中的安装说明

“在Windows上,将magic1.dll、regex2.dll和zlib1.dll从Windows项目文件提供的二进制文件和依赖项zipfiles复制到您的路径上。您需要将文件magic从[binary zip]\share\misc中复制出来,并将其位置传递给magic(magic_File=…)。如果您使用的是64位python版本,则需要64位libmagic二进制文件,可在以下位置找到:(注意:未测试)“

来源:

依赖关系
在Windows上,将magic1.dll、regex2.dll和zlib1.dll从项目提供的二进制文件和依赖项zipfiles复制到您的路径上。您需要将文件
magic
[binary zip]\share\misc
中复制出来,并将其位置传递给
magic(magic\u file=…)
。如果您使用的是64位的python构建,那么您需要64位的libmagic二进制文件,可以在这里找到:(注意:未测试)

您有没有使用过?