Можно ли добавить данные IPTC на JPG с помощью Python, когда такие данные уже не существует?
Вопрос
С модулем IPTCINFO под Python (http://snippets.dzone.com/posts/show/768. Для получения дополнительной информации) можно прочитать, изменить и запись IPTC INFO.
Однако, если JPG уже не имеет информации IPTC, модуль просто поднимает исключение. Похоже, это не умеет создавать и добавить эту информацию о метаданных самой информации.
Какие альтернативы там? Я проушинул за последний час, но безрезультатно.
Решение
Попробуйте pyexiv2. Это обертка exiv2, библиотека метаданных изображения C ++ (EXIF, IPTC, XMP), лицензированная под GPL. Это работает довольно хорошо.
Другие советы
Использовать force=True
вариант при создании IPTCInfo
объект. Тогда данные IPTC будут записаны, даже если он отсутствует в исходном файле.
info = IPTCInfo(input_file, force=True, inp_charset='utf8')
Из документов в исходном файле:
Если сила == правда, чем заставляет объект всегда возвращаться. Это позволяет вам начать добавлять вещи в файлы, которые не имеют информации IPTC, а затем сохранить ее.