2016-07-04 8 views
1

jar、html、css、exeタイプのファイルでいっぱいのフォルダがあります。ファイルをチェックするにはどうしたらいいですか?python-magicで.jarファイルの情報を取得するには

私はすでに* NIXでpython-magicを使って "file"コマンドを実行しました。結果はすべてこのようなものです。

test : Zip archive data, at least v1.0 to extract

にはどうすればいいだけのマジックナンバーを使用して使用して、具体的test : jarのような情報を得ることができます。

どうすればいいですか?

+0

すべてのjarファイルはzipファイルです。内容を抽出し、Javaで理解できるかどうかを手動で判断するか、 '.jar'のファイル名拡張子が' jar'ファイルとしてマークされていることを真に信頼する必要があります。 – metatoaster

答えて

0

ほとんどのJARファイルには、META-INF/MANIFEST.MFファイルが含まれています。

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") 

しかし、それは.jarで終わるのzipファイルの場合だけをチェックした方がよいかもしれません:あなたは、それがZIPファイルだかどうかをチェックした後、このファイルの存在を確認できました。

JARは文字通り単なるZIPファイルなので、Magicはあなたのためにはできません。フォーマットhereの詳細については、こちらをご覧ください。

関連する問題