def get_metadata_as_csv(fname):
    """ Gets all metadata and puts into CSV format """
    q = chr(34)
    d = ","
    res = q + fname + q + d
    res = res + q + os.path.basename(fname) + q + d
    res = res + q + os.path.dirname(fname) + q + d
    try:
        res = res + q + str(os.path.getsize(fname)) + q + d
        img = Image.open(fname)
        # get the image's width and height in pixels
        width, height = img.size
        res = res + q + str(width) + q + d
        res = res + q + str(height) + q + d
        res = res + q + str(img.format) + q + d
        res = res + q + str(img.palette) + q + d
        stat = ImageStat.Stat(img)
        #print(fname, width, height) 
        #res = res + q + str(stat.extrema) + q + d
        res = res + q + List2String(stat.count, ",") + q + d
        res = res + q + List2String(stat.sum, ",") + q + d
        res = res + q + List2String(stat.sum2, ",") + q + d
        res = res + q + List2String(stat.mean, ",") + q + d
        res = res + q + List2String(stat.median, ",") + q + d
        res = res + q + List2String(stat.rms, ",") + q + d
        res = res + q + List2String(stat.var, ",") + q + d
        res = res + q + List2String(stat.stddev, ",") + q + d

        exif_data = get_exif_data(img)
        (lat, lon) = get_lat_lon(exif_data)
        res = res + q + str(lat) + q + d
        res = res + q + str(lon) + q + d
    except Exception as ex:
        print('problem reading image file metadata in ', fname, str(ex))
    return res
def get_metadata_as_csv ( fname ) : q = chr ( 34 ) d = "," res = q + fname + q + d res = res + q + os . path . basename ( fname ) + q + d res = res + q + os . path . dirname ( fname ) + q + d try : res = res + q + str ( os . path . getsize ( fname ) ) + q + d img = Image . open ( fname ) width , height = img . size res = res + q + str ( width ) + q + d res = res + q + str ( height ) + q + d res = res + q + str ( img . format ) + q + d res = res + q + str ( img . palette ) + q + d stat = ImageStat . Stat ( img ) res = res + q + List2String ( stat . count , "," ) + q + d res = res + q + List2String ( stat . sum , "," ) + q + d res = res + q + List2String ( stat . sum2 , "," ) + q + d res = res + q + List2String ( stat . mean , "," ) + q + d res = res + q + List2String ( stat . median , "," ) + q + d res = res + q + List2String ( stat . rms , "," ) + q + d res = res + q + List2String ( stat . var , "," ) + q + d res = res + q + List2String ( stat . stddev , "," ) + q + d exif_data = get_exif_data ( img ) ( lat , lon ) = get_lat_lon ( exif_data ) res = res + q + str ( lat ) + q + d res = res + q + str ( lon ) + q + d except Exception as ex : print ( 'problem reading image file metadata in ' , fname , str ( ex ) ) return res
Gets all metadata and puts into CSV format