Чтение метаданных файлов EXE, MSI и ZIP в Python в Linux

Я пишу сценарий Python для индексации большого набора установщиков Windows в БД.

Я хотел бы знать, как читать информацию метаданных (компания, название продукта, версия и т. Д.) Из файлов EXE, MSI и ZIP, используя Python, работающий в Linux.

Программное обеспечение

Я использую Python 2.6. 5 на Ubuntu 10.04 64-бит с Django 1.2.1.

На данный момент найдено:

Утилиты командной строки Windows, которые могут извлекать метаданные EXE (например, filever из SysUtils), или другие отдельные утилиты CL, которые работают только в Windows. Я' Я пробовал запускать их через Wine, но у них есть проблемы, и не стоило того, чтобы найти библиотеки и фреймворки, от которых зависят эти утилиты CL, и попытаться установить их в Wine / Crossover.

Модули Win32 для Python, которые может кое-что делать, но не работает в Linux (верно?)

Второй вопрос:

Очевидно, что изменение метаданных файла приведет к изменению хеш-суммы файла MD5. Есть ли общий метод хеширования файла, независимый от метаданных, кроме его поиска и чтения (например, пропустить первые 1024 байта?)


Это мой первый пост в StackOverflow. С тех пор, как я начал свою последнюю работу в качестве нового разработчика Python, я был невероятно впечатлен Stackoverflow, и он постоянно появлялся в топе поисковых запросов Google по моим запросам Python / Django и давал высококачественные ответы. Престижность этому сообществу.

7
задан user451500 18 September 2010 в 16:55
поделиться