python解码base64_在python中解码Base64 Gzip
我嘗試使用Python解碼gzip garmin活動文件。根據(jù)Garmin的說法,這個文件是base64gz文件。我通過post從瀏覽器上傳文件,并在Django應(yīng)用程序中接收數(shù)據(jù)。在
文件的開頭如下所示。在begin-base64 644 data.xml.gz\nH4sIAAAAAAAAA y9a4 lx3Hn d6fguB7JzNuGZkNigNfdrAGbMAYaXeNfbPolXplYiRSIFu
我使用以下代碼調(diào)整填充和解碼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'+/'))))
屏幕上解碼的數(shù)據(jù)開頭如下所示:\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
我還嘗試將文件直接保存到磁盤上,并從命令行運行g(shù)unzip,這也導(dǎo)致了相同的錯誤。在
任何幫助都將不勝感激。在
總結(jié)
以上是生活随笔為你收集整理的python解码base64_在python中解码Base64 Gzip的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 服务器每秒钟执行命令数量是什么_如何合理
- 下一篇: shell 压测_【原】shell编写一