import zipfile zipfile ZipFile tmp price zip infolist namelist x8e xe1

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
>>> import zipfile
>>> z = zipfile.ZipFile('/tmp/price.zip')
>>> z.infolist()
>>> z.namelist()
<<<
['\x8e\xe1\xad\xae\xa2\xad\xae\xa9 \xaf\xe0\xa0\xa9\xe1 (2007.11.26).xls',
'\x8f\xe0\xa0\xa9\xe1 \xad\xa0 \xe0\xa0\xe1\xe5\xae\xa4\xad\xeb\xa5 \xac\xa0\xe2\xa5\xe0\xa8\xa0\xab\xeb.xls']
>>> s = ','.join(z.namelist())
>>> import chardet
>>> chardet.detect(s)
<<< {'confidence': 0.99196089293375689, 'encoding': 'IBM866'}
>>> print s.decode('cp866')
Основной прайс (2007.11.26).xls,Прайс на расходные материалы.xls
>>> file_to_extract = z.namelist()[0]
>>> d = z.read(file_to_extract)
>>> d[:20]
<<< '\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'