J'ai cherché sur Internet une solution pour importer correctement magic
dans Windows 10 64 bits. J'ai trouvé this, mais je ne comprends pas la solution.Problèmes d'importation de magie sous Windows 64 bits
Il est indiqué de copier deux DLL dans le chemin spécifié dans le système d'exploitation.
Que signifie la commande ci-dessous?
file_magic = magic.Magic(magic_file="c:\path\to\magic.mgc")
La solution est la combinaison de 1 + 2? Ou juste 1? J'ai fait 1. Toujours avoir une erreur. (La 1ère erreur est résolu)
>>> import magic
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\site-packages\magic.py", line 176, in <modu
raise ImportError('failed to find libmagic. Check your install
ImportError: failed to find libmagic. Check your installation
Erreur Deuxièmement, je reçois
>>> import magic
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\site-packages\magic\__init__.py", line 1, in <module>
from . import ffi
File "C:\Python27\lib\site-packages\magic\ffi.py", line 27, in <module>
ext_package="magic")
File "C:\Python27\lib\site-packages\cffi\api.py", line 437, in verify
lib = self.verifier.load_library()
File "C:\Python27\lib\site-packages\cffi\verifier.py", line 113, in load_library
self._compile_module()
File "C:\Python27\lib\site-packages\cffi\verifier.py", line 210, in _compile_module
outputfilename = ffiplatform.compile(tmpdir, self.get_extension())
File "C:\Python27\lib\site-packages\cffi\ffiplatform.py", line 29, in compile
outputfilename = _build(tmpdir, ext, compiler_verbose)
File "C:\Python27\lib\site-packages\cffi\ffiplatform.py", line 55, in _build
dist.run_command('build_ext')
File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
cmd_obj.run()
File "C:\Python27\lib\site-packages\setuptools\command\build_ext.py", line 75, in run
_build_ext.run(self)
File "C:\Python27\lib\distutils\command\build_ext.py", line 340, in run
self.build_extensions()
File "C:\Python27\lib\distutils\command\build_ext.py", line 449, in build_extensions
self.build_extension(ext)
File "C:\Python27\lib\site-packages\setuptools\command\build_ext.py", line 196, in build_extension
_build_ext.build_extension(self, ext)
File "C:\Python27\lib\distutils\command\build_ext.py", line 499, in build_extension
depends=ext.depends)
File "C:\Python27\lib\distutils\msvc9compiler.py", line 473, in compile
self.initialize()
File "C:\Python27\lib\distutils\msvc9compiler.py", line 383, in initialize
vc_env = query_vcvarsall(VERSION, plat_spec)
File "C:\Python27\lib\site-packages\setuptools\msvc.py", line 136, in msvc9_query_vcvarsall
return EnvironmentInfo(arch, ver).return_env()
File "C:\Python27\lib\site-packages\setuptools\msvc.py", line 1097, in return_env
[self.VCIncludes,
File "C:\Python27\lib\site-packages\setuptools\msvc.py", line 805, in VCIncludes
return [os.path.join(self.si.VCInstallDir, 'Include'),
File "C:\Python27\lib\site-packages\setuptools\msvc.py", line 542, in VCInstallDir
raise distutils.errors.DistutilsPlatformError(msg)
distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 9.0 is required. Get it from http://aka.ms/vcpython27
Lorsque vous utilisez des barres obliques inverses ('\'), vous devez soit les doubler ou utiliser des chaînes brutes ('r "C: \ Programmes \ libmagicwin64 \ magic.mgc"' – cco
Il travaille dans le cas des fenêtres; dans le cas de linux, lorsque vous utilisez des barres obliques inverses (\), vous devez les doubler ou utiliser des chaînes brutes (r "C: \ Programmes \ libmagicwin64 \ magic.mgc") –
Cela ne fonctionne que par hasard, car si aucun caractère d'échappement est mis en correspondance, le caractère \ et le caractère suivant sont passés tels quels. Si le chemin contient '\ User', vous obtiendrez une erreur d'échappement Unicode. – cco