python解码base64_在python中解码Base64 Gzip

我尝试使用Python解码gzip garmin活动文件。根据Garmin的说法,这个文件是base64gz文件。我通过post从浏览器上传文件,并在Django应用程序中接收数据。在

文件的开头如下所示。在begin-base64 644 data.xml.gz\nH4sIAAAAAAAAA y9a4 lx3Hn d6fguB7JzNuGZkNigNfdrAGbMAYaXeNfbPolXplYiRSIFu

我使用以下代码调整填充和解码base64:import base64

padding_factor = (4 - len(data) % 4) % 4

data += "="*padding_factor

data_decoded = base64.b64decode(unicode(data).translate(dict(zip(map(ord, u'-_'), u'+/'))))

屏幕上解码的数据开头如下所示:\xe8"\x9f\xe6\xda\xb1\xee\xb8\xeb\x8e\x1dj\xd6\xb1\x9aX3\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x03/Z\xe2\w\x1ewz~\x0b\x81\xec\x9c\xcd\xb8fd6(\r}\xda\xc0\x19\xb3\x00a\xa5\xde5\xf6\xcf\xa2U\xe9\x95\x88\x91H\x81n\xcb\xf7\xb4\x9f\xcc\xa7y%\xbd\x95\x9e\x13\xcd\x10\xf9Th\x04\x8d\xdf\xdf\xa6\xba\xa9\xcd\xf9=s\xf8G\xfc

print data_decoded如下所示:}???a??5?ϢU镈?H?n????̧y%?????Th??ߦ????=s?G?

然后,我尝试使用以下命令解压缩文件:

^{pr2}$

之后,我得到以下错误:File "", line 1, in

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/gzip.py", line 245, in read

self._read(readsize)

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/gzip.py", line 287, in _read

self._read_gzip_header()

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/gzip.py", line 181, in _read_gzip_header

raise IOError, 'Not a gzipped file'

IOError: Not a gzipped file

我还尝试将文件直接保存到磁盘上,并从命令行运行gunzip,这也导致了相同的错误。在

任何帮助都将不胜感激。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值