问题标签 [python-magic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python-Magic '找不到任何有效的魔术文件!'
我想使用Python-Magic
图书馆,但我得到:
magic.magic.MagicException: b'找不到任何有效的魔法文件!'
像这样的简单代码错误:
我确实用谷歌搜索了错误消息并尝试了这个;如前所述,Windows 上的“魔术”库缺少文件
这次我得到这个错误:
magic.magic.MagicException: b"文件 5.32 仅支持版本 14 的魔法文件。`C:\Program Files (x86)\GnuWin32\share\misc\magic.mgc' 是版本 7"
我也这样做了;Python 错误:文件 5.3 仅支持版本 7 魔术文件,没有任何变化。
我也尝试更改环境变量MAGIC=path\to\gnuwin32\share\misc\magic
并下载http://gnuwin32.sourceforge.net/packages/file.htm并没有任何变化。
提前致谢,
python - python-magic 包是否可以检查格式为 .mp4 的视频文件的 mime 类型?
我正在尝试使用python-magic包来识别上传的文件类型(使用 mime 类型),我用它来识别图像和音频文件,它工作正常,但对于视频文件,它会引发错误。
对于视频文件,我有
如果我提供图像 mime 类型和音频 mime 类型来代替“supported_types”,则此代码可以正常工作,但现在对于视频,它不支持可能是什么原因
错误是这样的:'_io.BufferedRandom' 对象没有属性'getvalue'
我尝试上传的文件是 .mp4 格式,可以在媒体播放器中完美播放
或者,在上传之前有没有其他方法可以在 python/django 中验证 .mp4(video) 文件格式,这比这更好?
elastalert - ElastAlert 和 libmagic
当尝试通过 python 运行 ElastAlert(每个 ElastAlert 阅读文档页面)时,将返回以下内容。
命令:
错误:
我尝试了 pip 卸载并重新安装 python-magic 0.4.15(ElastAlert 所需的版本),但仍然出现相同的错误。
python - 我应该怎么做才能在 Heroku 上使用 python-magic?
我正在构建一个使用python-magic 0.4.15的应用程序。在我的本地机器上,python-magic-bin 0.4.15就像一个魅力(Windows),但我试图让它在 Heroku 上工作。首先,我只是想让测试通过 Heroku-CI。我将包添加到我的requirements.txt
:
并将其推送给 Heroku。它被正确安装:
但后来它像这样崩溃:
我尝试添加NetsoftHoldings/heroku-buildpack-magic buildpack,我可以看到它正在被下载:
pip 包正在正确安装:
但是buildpack似乎有一个错误(我在这里猜):
它最终像这样崩溃:
然后我尝试添加heroku-community/apt
buildpack 和一个 Aptfile,其中包含:
我可以看到它们已正确安装:
但是应用程序仍然失败并出现同样的错误:
任何想法如何让 python-magic 在 Heroku 上工作?
python - 找不到“magic.h”文件?
尝试使用Panoptes 客户端包并在需要 panoptes 后安装 libmagic & magic。配置完成后,我终于尝试运行命令上传我的图片:
并收到一个漫长的错误,开始于
我试图卸载并重新安装 libmagic & magic 来解决这个问题,但无济于事。重新启动我的进程后,我现在在 panoptes 的第一个命令上出现此错误:
任何建议表示赞赏。
python - 检查文件体系结构的通用方法
有没有一种通用的方法来检查二进制文件(可以是 ELF、Dwarf、PE 等)的平台(32 位/64 位)和架构(powerpc、arm 等)?
我知道几乎每个文件(elf 或 pe)都有一个标头,说明哪个体系结构可以执行它,但是有没有一种通用的方法可以从所有二进制文件中获取这些信息?
我尝试使用返回所有这些信息的魔法,但它以字符串形式返回 -
现在,我正在使用正则表达式从中提取信息,但我不确定是否总是可以依靠它,因为魔法的字符串输出可能不同。
python - Django 用 python-magic (libmagic) 来验证上传的文件
我正在尝试在 django 中保存上传文件的 mime 类型。我不需要拒绝某些类型的文件,我只需要跟踪上传文件的 mime 类型。我正在这样做:
问题是filetype = magic.from_file(self.document.read())
抛出错误:“ValueError:嵌入式空字节”。该文件绝对没有损坏(在这种情况下,它是一个 png,所以我期待图像/png)。from_file 肯定似乎想要一个字节对象,而 self.document.read() 肯定会产生字节,所以我不确定问题是什么......
python-3.x - 为什么在将字节字符串传递给 magic.from_buffer() 时会出现 TypeError?
我正在尝试使用 python-magic 从 url 获取图像的文件类型from_buffer
,它在实践中运行良好,但是当我尝试运行单元测试时失败。
这是我的功能:
这是迄今为止的测试:
该测试需要很长时间才能运行,最后出现以下回溯错误:
我看不出我做错了什么,当我在终端中运行它时它工作正常,我一定错过了一些东西。
python - 尝试在 Google Colab 中安装/使用 Python-Magic 时出错
我正在尝试在 Colab 中安装 python-magic。这是库的 Github https://github.com/ahupp/python-magic#dependencies
当我尝试:
这导致
我已经尝试了所有可能的解决方案
这篇 SO 帖子说 Exception Value:failed to find libmagic。检查您在 Windows 7 中的安装
您的 multiuploader 表单可能使用 python-magic 库来识别文件类型。但是,您可能没有安装所有缺少的依赖项。请安装缺少的依赖项。 https://github.com/ahupp/python-magic#dependencies
但是不再列出依赖项。
我也试过
pip install python_magic_bin-0.4.14-py2.py3-none-win_amd64.whl
和
pip install python_magic_bin-0.4.14-py2.py3-none-win32.whl
从这个 SO 帖子
我试过了
pip install python-magic-bin==0.4.14
我也试过
!brew install libmagic
但 Colab 似乎不承认brew
python - 为什么模块 python-magic 不可用?
我正在使用s3cmd从 Mac 同步到 S3 存储桶,我收到以下警告:
但pip list
说明python-magic
其实是安装的。
并python --version
显示
并pip --version
显示
我该如何解决这个问题?