Chris Rebert <c...@rebertia.com> wrote: > On Tue, Jan 24, 2012 at 3:57 AM, <tinn...@isbd.co.uk> wrote: > > I have a small python program that uses the pyexiv2 package to view > > exif data in image files. > > > > I've hit a problem because I have a filename with accented characters > > in its path and the pyexiv2 code traps as follows:- > > > > Traceback (most recent call last): > > File "/home/chris/bin/eview.py", line 87, in <module> > > image = pyexiv2.ImageMetadata(filepath) > > File "/usr/lib/python2.7/dist-packages/pyexiv2/metadata.py", line 65, > > in __init__ > > self.filename = filename.encode(sys.getfilesystemencoding()) > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 38: > > ordinal not in range(128) > > > > Without digging deep into pyexiv2 is there any way I can work around > > this error? The accented characters aren't in the filename itself, > > they're in the directory path. > > After glancing at the docs, (untested): > > with open(filepath) as f: > image = pyexiv2.ImageMetadata.from_buffer(f.read()) > Excellent, worked perfectly (after I spotted I had another variable f).
Thank you. -- Chris Green -- http://mail.python.org/mailman/listinfo/python-list