この記事の例では、Python が Linux でファイルのバージョン情報、会社名、製品名を取得する方法を説明します。参考のために皆さんと共有します。詳細は以下の通りです。
上記との違い。この例では、主に pefile モジュールを通じてファイル内の文字列を解析することにより、Linux でファイルのバージョン情報を取得します。コードは次のとおりです:
def _get_company_and_product(self, file_path): """ Read all properties of the given file return them as a dictionary. @return: a tumple, (company, product) """ mype = pefile.PE(file_path) companyName = "" productName = "" if hasattr(mype, 'VS_VERSIONINFO'): if hasattr(mype, 'FileInfo'): for entry in mype.FileInfo: if hasattr(entry, 'StringTable'): for st in entry.StringTable: for k, v in st.entries.items(): if k == u"CompanyName": companyName = v elif k == u"ProductName": productName = v if not companyName: companyName = None if not productName: productName = None return (companyName, productName)
ここでは、会社名情報と製品名の情報のみが必要です。バージョン番号などの情報も文字列リソースに含まれます。
この記事が皆さんの Python プログラミング設計に役立つことを願っています。