使用Python下的IPTCInfo模塊(更多信息請參考http://snippets.dzone.com/posts/show/768),可以讀取,修改和寫入IPTC信息到圖片。當沒有這樣的數據時,是否可以使用python將IPTC數據添加到JPG中?
但是,如果JPG還沒有IPTC信息,模塊只會引發異常。它似乎無法自己創建和添加此元數據信息。
還有什麼替代方法?我在過去的一個小時內搜索了Google,但無濟於事。
使用Python下的IPTCInfo模塊(更多信息請參考http://snippets.dzone.com/posts/show/768),可以讀取,修改和寫入IPTC信息到圖片。當沒有這樣的數據時,是否可以使用python將IPTC數據添加到JPG中?
但是,如果JPG還沒有IPTC信息,模塊只會引發異常。它似乎無法自己創建和添加此元數據信息。
還有什麼替代方法?我在過去的一個小時內搜索了Google,但無濟於事。
嘗試pyexiv2。它是exiv2的封裝,是GPL許可的C++圖片元數據(EXIF,IPTC,XMP)庫。它工作得很好。
創建IPTCInfo
對象時使用force=True
選項。然後IPTC數據即使在原始文件中缺失也會被寫入。
info = IPTCInfo(input_file, force=True, inp_charset='utf8')
從源文件中的文檔:
如果力==真,不是強制始終返回的對象。這 允許您開始添加東西到文件沒有IPTC信息 ,然後保存它。