blob: f4e884de838de383d6cfdcb6f86ed431815b9d42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
'''
Takes care about pictures formats
'''
import parser
class JpegStripper(parser.GenericParser):
'''
represents a jpeg file
'''
def _should_remove(self, field):
'''
return True if the field is compromizing
'''
field_list = frozeset(['start_image', 'app0', 'start_frame',
'start_scan', 'data', 'end_image'])
if field.name in field_list:
return False
elif field.name.startswith('quantization['):
return False
elif field.name.startswith('huffman['):
return False
return True
class PngStripper(parser.GenericParser):
'''
represents a png file
see : http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/PNG.html
'''
def _should_remove(self, field):
'''
return True if the field is compromizing
'''
name = field.name
if name.startswith('text['): # textual meta
return True
elif name.startswith('utf8_text['): # uncompressed adobe crap
return True
elif name.startswith('compt_text['): # compressed adobe crap
return True
elif name == "time": # timestamp
return True
else:
return False
|