Как получить информацию о файле.jar в python-magic
У меня есть папка, полная jar, html, css, exe type file. Как я могу проверить файл?
Я уже запускаю команду "file" в *NIX и использую python-magic. но результат все так.
test : Zip archive data, at least v1.0 to extract
Как я могу получить информацию конкретно как test : jar
только используя магический номер.
Как мне это сделать?
1 ответ
Хотя это и не требуется, большинство файлов JAR имеют META-INF/MANIFEST.MF
файл, содержащийся в них. Вы можете проверить наличие этого файла, проверив, является ли он zip-файлом:
import zipfile
def zipFileContains(zipFileName, pathName):
f = zipfile.ZipFile(zipFileName, "r")
result = any(x.startswith(pathName.rstrip("/")) for x in f.namelist())
f.close()
return result
print zipFileContains("test.jar", "META-INF/MANIFEST.MF")
Тем не менее, может быть лучше просто проверить, является ли это ZIP-файл, который заканчивается .jar
,
Волшебство само по себе не сделает этого за вас, поскольку JAR - это просто zip-файл. Подробнее о формате читайте здесь.